From a9bf1a6c5c206cced12d3dbbf640f1a6f08bd455 Mon Sep 17 00:00:00 2001 From: DuckDB Labs GitHub Bot Date: Thu, 19 Dec 2024 00:35:46 +0000 Subject: [PATCH] Update vendored DuckDB sources to 25c7873c --- src/duckdb/extension/json/json_scan.cpp | 15 +- src/duckdb/src/common/radix_partitioning.cpp | 28 +- .../row_operations/row_radix_scatter.cpp | 2 + src/duckdb/src/execution/join_hashtable.cpp | 103 +- .../scanner/string_value_scanner.cpp | 18 +- .../csv_scanner/sniffer/header_detection.cpp | 14 + .../state_machine/csv_state_machine_cache.cpp | 20 +- .../operator/csv_scanner/util/csv_error.cpp | 9 +- .../csv_scanner/util/csv_reader_options.cpp | 9 +- .../operator/join/physical_hash_join.cpp | 87 +- .../src/execution/sample/reservoir_sample.cpp | 6 +- .../function/table/version/pragma_version.cpp | 6 +- .../window/window_boundaries_state.cpp | 10 +- .../src/function/window/window_index_tree.cpp | 214 +- .../window/window_merge_sort_tree.cpp | 257 + .../function/window/window_rank_function.cpp | 141 +- .../src/function/window/window_token_tree.cpp | 123 + .../function/window/window_value_function.cpp | 6 +- .../common/insertion_order_preserving_map.hpp | 14 +- .../duckdb/common/radix_partitioning.hpp | 4 +- .../duckdb/common/types/validity_mask.hpp | 3 + .../vector_operations/unary_executor.hpp | 72 + .../duckdb/execution/join_hashtable.hpp | 21 +- .../duckdb/execution/merge_sort_tree.hpp | 4 + .../function/window/window_index_tree.hpp | 82 +- .../window/window_merge_sort_tree.hpp | 108 + .../function/window/window_rank_function.hpp | 22 +- .../function/window/window_token_tree.hpp | 43 + .../function/window/window_value_function.hpp | 4 +- .../duckdb/main/secret/secret_storage.hpp | 42 +- .../join_order/relation_statistics_helper.hpp | 4 +- .../storage/table/array_column_data.hpp | 4 +- .../duckdb/storage/table/column_data.hpp | 23 +- .../table/column_data_checkpointer.hpp | 15 +- .../duckdb/storage/table/list_column_data.hpp | 2 +- .../duckdb/storage/table/segment_tree.hpp | 10 + src/duckdb/src/main/secret/secret_manager.cpp | 2 +- src/duckdb/src/main/secret/secret_storage.cpp | 10 +- .../join_order/relation_statistics_helper.cpp | 34 +- .../expression/transform_function.cpp | 4 +- src/duckdb/src/storage/table/column_data.cpp | 7 +- .../table/column_data_checkpointer.cpp | 40 +- .../storage/table/standard_column_data.cpp | 11 +- .../src/transaction/wal_write_state.cpp | 6 +- .../libpg_query/src_backend_parser_gram.cpp | 29539 ++++++++-------- src/duckdb/ub_src_function_window.cpp | 4 + 46 files changed, 15914 insertions(+), 15288 deletions(-) create mode 100644 src/duckdb/src/function/window/window_merge_sort_tree.cpp create mode 100644 src/duckdb/src/function/window/window_token_tree.cpp create mode 100644 src/duckdb/src/include/duckdb/function/window/window_merge_sort_tree.hpp create mode 100644 src/duckdb/src/include/duckdb/function/window/window_token_tree.hpp diff --git a/src/duckdb/extension/json/json_scan.cpp b/src/duckdb/extension/json/json_scan.cpp index 69915155..bd0a34e0 100644 --- a/src/duckdb/extension/json/json_scan.cpp +++ b/src/duckdb/extension/json/json_scan.cpp @@ -390,8 +390,19 @@ void JSONScanLocalState::ParseJSON(char *const json_start, const idx_t json_size doc = JSONCommon::ReadDocumentUnsafe(json_start, remaining, JSONCommon::READ_INSITU_FLAG, allocator.GetYYAlc(), &err); } - if (!bind_data.ignore_errors && err.code != YYJSON_READ_SUCCESS) { - current_reader->ThrowParseError(current_buffer_handle->buffer_index, lines_or_objects_in_buffer, err); + if (err.code != YYJSON_READ_SUCCESS) { + auto can_ignore_this_error = bind_data.ignore_errors; + string extra; + if (current_reader->GetFormat() != JSONFormat::NEWLINE_DELIMITED) { + can_ignore_this_error = false; + extra = bind_data.ignore_errors + ? "Parse errors cannot be ignored for JSON formats other than 'newline_delimited'" + : ""; + } + if (!can_ignore_this_error) { + current_reader->ThrowParseError(current_buffer_handle->buffer_index, lines_or_objects_in_buffer, err, + extra); + } } // We parse with YYJSON_STOP_WHEN_DONE, so we need to check this by hand diff --git a/src/duckdb/src/common/radix_partitioning.cpp b/src/duckdb/src/common/radix_partitioning.cpp index d62a1329..8b091a80 100644 --- a/src/duckdb/src/common/radix_partitioning.cpp +++ b/src/duckdb/src/common/radix_partitioning.cpp @@ -60,27 +60,25 @@ RETURN_TYPE RadixBitsSwitch(const idx_t radix_bits, ARGS &&... args) { } // LCOV_EXCL_STOP } -template -struct RadixLessThan { - static inline bool Operation(hash_t hash, hash_t cutoff) { - using CONSTANTS = RadixPartitioningConstants; - return CONSTANTS::ApplyMask(hash) < cutoff; - } -}; - struct SelectFunctor { template - static idx_t Operation(Vector &hashes, const SelectionVector *sel, const idx_t count, const idx_t cutoff, - SelectionVector *true_sel, SelectionVector *false_sel) { - Vector cutoff_vector(Value::HASH(cutoff)); - return BinaryExecutor::Select>(hashes, cutoff_vector, sel, count, - true_sel, false_sel); + static idx_t Operation(Vector &hashes, const SelectionVector *sel, const idx_t count, + const ValidityMask &partition_mask, SelectionVector *true_sel, SelectionVector *false_sel) { + using CONSTANTS = RadixPartitioningConstants; + return UnaryExecutor::Select( + hashes, sel, count, + [&](const hash_t hash) { + const auto partition_idx = CONSTANTS::ApplyMask(hash); + return partition_mask.RowIsValidUnsafe(partition_idx); + }, + true_sel, false_sel); } }; idx_t RadixPartitioning::Select(Vector &hashes, const SelectionVector *sel, const idx_t count, const idx_t radix_bits, - const idx_t cutoff, SelectionVector *true_sel, SelectionVector *false_sel) { - return RadixBitsSwitch(radix_bits, hashes, sel, count, cutoff, true_sel, false_sel); + const ValidityMask &partition_mask, SelectionVector *true_sel, + SelectionVector *false_sel) { + return RadixBitsSwitch(radix_bits, hashes, sel, count, partition_mask, true_sel, false_sel); } struct ComputePartitionIndicesFunctor { diff --git a/src/duckdb/src/common/row_operations/row_radix_scatter.cpp b/src/duckdb/src/common/row_operations/row_radix_scatter.cpp index 95a230ef..a85a7199 100644 --- a/src/duckdb/src/common/row_operations/row_radix_scatter.cpp +++ b/src/duckdb/src/common/row_operations/row_radix_scatter.cpp @@ -251,11 +251,13 @@ void RadixScatterStructVector(Vector &v, UnifiedVectorFormat &vdata, idx_t vcoun for (idx_t i = 0; i < add_count; i++) { auto idx = sel.get_index(i); auto source_idx = vdata.sel->get_index(idx) + offset; + // write validity and according value if (validity.RowIsValid(source_idx)) { key_locations[i][0] = valid; } else { key_locations[i][0] = invalid; + memset(key_locations[i] + 1, '\0', width - 1); } key_locations[i]++; } diff --git a/src/duckdb/src/execution/join_hashtable.cpp b/src/duckdb/src/execution/join_hashtable.cpp index 621ff6a4..d5122470 100644 --- a/src/duckdb/src/execution/join_hashtable.cpp +++ b/src/duckdb/src/execution/join_hashtable.cpp @@ -34,7 +34,7 @@ JoinHashTable::JoinHashTable(ClientContext &context, const vector : buffer_manager(BufferManager::GetBufferManager(context)), conditions(conditions_p), build_types(std::move(btypes)), output_columns(output_columns_p), entry_size(0), tuple_size(0), vfound(Value::BOOLEAN(false)), join_type(type_p), finalized(false), has_null(false), - radix_bits(INITIAL_RADIX_BITS), partition_start(0), partition_end(0) { + radix_bits(INITIAL_RADIX_BITS) { for (idx_t i = 0; i < conditions.size(); ++i) { auto &condition = conditions[i]; D_ASSERT(condition.left->return_type == condition.right->return_type); @@ -108,6 +108,8 @@ JoinHashTable::JoinHashTable(ClientContext &context, const vector auto &config = ClientConfig::GetConfig(context); single_join_error_on_multiple_rows = config.scalar_subquery_error_on_multiple_rows; } + + InitializePartitionMasks(); } JoinHashTable::~JoinHashTable() { @@ -1430,7 +1432,10 @@ idx_t JoinHashTable::GetRemainingSize() const { idx_t count = 0; idx_t data_size = 0; - for (idx_t partition_idx = partition_end; partition_idx < num_partitions; partition_idx++) { + for (idx_t partition_idx = 0; partition_idx < num_partitions; partition_idx++) { + if (completed_partitions.RowIsValidUnsafe(partition_idx)) { + continue; + } count += partitions[partition_idx]->Count(); data_size += partitions[partition_idx]->SizeInBytes(); } @@ -1464,6 +1469,32 @@ void JoinHashTable::SetRepartitionRadixBits(const idx_t max_ht_size, const idx_t radix_bits += added_bits; sink_collection = make_uniq(buffer_manager, layout, radix_bits, layout.ColumnCount() - 1); + + // Need to initialize again after changing the number of bits + InitializePartitionMasks(); +} + +void JoinHashTable::InitializePartitionMasks() { + const auto num_partitions = RadixPartitioning::NumberOfPartitions(radix_bits); + + current_partitions.Initialize(num_partitions); + current_partitions.SetAllInvalid(num_partitions); + + completed_partitions.Initialize(num_partitions); + completed_partitions.SetAllInvalid(num_partitions); +} + +idx_t JoinHashTable::CurrentPartitionCount() const { + const auto num_partitions = RadixPartitioning::NumberOfPartitions(radix_bits); + D_ASSERT(current_partitions.Capacity() == num_partitions); + return current_partitions.CountValid(num_partitions); +} + +idx_t JoinHashTable::FinishedPartitionCount() const { + const auto num_partitions = RadixPartitioning::NumberOfPartitions(radix_bits); + D_ASSERT(completed_partitions.Capacity() == num_partitions); + // We already marked the active partitions as done, so we have to subtract them here + return completed_partitions.CountValid(num_partitions) - CurrentPartitionCount(); } void JoinHashTable::Repartition(JoinHashTable &global_ht) { @@ -1477,6 +1508,7 @@ void JoinHashTable::Repartition(JoinHashTable &global_ht) { void JoinHashTable::Reset() { data_collection->Reset(); hash_map.Reset(); + current_partitions.SetAllInvalid(RadixPartitioning::NumberOfPartitions(radix_bits)); finalized = false; } @@ -1486,33 +1518,46 @@ bool JoinHashTable::PrepareExternalFinalize(const idx_t max_ht_size) { } const auto num_partitions = RadixPartitioning::NumberOfPartitions(radix_bits); - if (partition_end == num_partitions) { - return false; + D_ASSERT(current_partitions.Capacity() == num_partitions); + D_ASSERT(completed_partitions.Capacity() == num_partitions); + D_ASSERT(current_partitions.CheckAllInvalid(num_partitions)); + + if (completed_partitions.CheckAllValid(num_partitions)) { + return false; // All partitions are done } - // Start where we left off + // Create vector with unfinished partition indices auto &partitions = sink_collection->GetPartitions(); - partition_start = partition_end; + vector partition_indices; + partition_indices.reserve(num_partitions); + for (idx_t partition_idx = 0; partition_idx < num_partitions; partition_idx++) { + if (!completed_partitions.RowIsValidUnsafe(partition_idx)) { + partition_indices.push_back(partition_idx); + } + } + // Sort partitions by size, from small to large + std::sort(partition_indices.begin(), partition_indices.end(), [&](const idx_t &lhs, const idx_t &rhs) { + const auto lhs_size = partitions[lhs]->SizeInBytes() + PointerTableSize(partitions[lhs]->Count()); + const auto rhs_size = partitions[rhs]->SizeInBytes() + PointerTableSize(partitions[rhs]->Count()); + return lhs_size < rhs_size; + }); - // Determine how many partitions we can do next (at least one) + // Determine which partitions should go next idx_t count = 0; idx_t data_size = 0; - idx_t partition_idx; - for (partition_idx = partition_start; partition_idx < num_partitions; partition_idx++) { - auto incl_count = count + partitions[partition_idx]->Count(); - auto incl_data_size = data_size + partitions[partition_idx]->SizeInBytes(); - auto incl_ht_size = incl_data_size + PointerTableSize(incl_count); + for (const auto &partition_idx : partition_indices) { + D_ASSERT(!completed_partitions.RowIsValidUnsafe(partition_idx)); + const auto incl_count = count + partitions[partition_idx]->Count(); + const auto incl_data_size = data_size + partitions[partition_idx]->SizeInBytes(); + const auto incl_ht_size = incl_data_size + PointerTableSize(incl_count); if (count > 0 && incl_ht_size > max_ht_size) { - break; + break; // Always add at least one partition } count = incl_count; data_size = incl_data_size; - } - partition_end = partition_idx; - - // Move the partitions to the main data collection - for (partition_idx = partition_start; partition_idx < partition_end; partition_idx++) { - data_collection->Combine(*partitions[partition_idx]); + current_partitions.SetValidUnsafe(partition_idx); // Mark as currently active + data_collection->Combine(*partitions[partition_idx]); // Move partition to the main data collection + completed_partitions.SetValidUnsafe(partition_idx); // Also already mark as done } D_ASSERT(Count() == count); @@ -1531,7 +1576,7 @@ void JoinHashTable::ProbeAndSpill(ScanStructure &scan_structure, DataChunk &prob SelectionVector false_sel(STANDARD_VECTOR_SIZE); const auto true_count = RadixPartitioning::Select(hashes, FlatVector::IncrementalSelectionVector(), probe_keys.size(), radix_bits, - partition_end, &true_sel, &false_sel); + current_partitions, &true_sel, &false_sel); const auto false_count = probe_keys.size() - true_count; // can't probe these values right now, append to spill @@ -1596,21 +1641,25 @@ void ProbeSpill::Finalize() { } void ProbeSpill::PrepareNextProbe() { + global_spill_collection.reset(); auto &partitions = global_partitions->GetPartitions(); - if (partitions.empty() || ht.partition_start == partitions.size()) { + if (partitions.empty() || ht.current_partitions.CheckAllInvalid(partitions.size())) { // Can't probe, just make an empty one global_spill_collection = make_uniq(BufferManager::GetBufferManager(context), probe_types); } else { - // Move specific partitions to the global spill collection - global_spill_collection = std::move(partitions[ht.partition_start]); - for (idx_t i = ht.partition_start + 1; i < ht.partition_end; i++) { - auto &partition = partitions[i]; - if (global_spill_collection->Count() == 0) { + // Move current partitions to the global spill collection + for (idx_t partition_idx = 0; partition_idx < partitions.size(); partition_idx++) { + if (!ht.current_partitions.RowIsValidUnsafe(partition_idx)) { + continue; + } + auto &partition = partitions[partition_idx]; + if (!global_spill_collection) { global_spill_collection = std::move(partition); - } else { + } else if (partition->Count() != 0) { global_spill_collection->Combine(*partition); } + partition.reset(); } } consumer = make_uniq(*global_spill_collection, column_ids); diff --git a/src/duckdb/src/execution/operator/csv_scanner/scanner/string_value_scanner.cpp b/src/duckdb/src/execution/operator/csv_scanner/scanner/string_value_scanner.cpp index 27e0cbd9..27820b24 100644 --- a/src/duckdb/src/execution/operator/csv_scanner/scanner/string_value_scanner.cpp +++ b/src/duckdb/src/execution/operator/csv_scanner/scanner/string_value_scanner.cpp @@ -1330,17 +1330,21 @@ void StringValueScanner::ProcessOverBufferValue() { value = string_t(over_buffer_string.c_str() + result.quoted_position, UnsafeNumericCast(over_buffer_string.size() - 1 - result.quoted_position)); if (result.escaped) { - const auto str_ptr = over_buffer_string.c_str() + result.quoted_position; - value = RemoveEscape(str_ptr, over_buffer_string.size() - 2, - state_machine->dialect_options.state_machine_options.escape.GetValue(), - result.parse_chunk.data[result.chunk_col_id]); + if (!result.HandleTooManyColumnsError(over_buffer_string.c_str(), over_buffer_string.size())) { + const auto str_ptr = over_buffer_string.c_str() + result.quoted_position; + value = RemoveEscape(str_ptr, over_buffer_string.size() - 2, + state_machine->dialect_options.state_machine_options.escape.GetValue(), + result.parse_chunk.data[result.chunk_col_id]); + } } } else { value = string_t(over_buffer_string.c_str(), UnsafeNumericCast(over_buffer_string.size())); if (result.escaped) { - value = RemoveEscape(over_buffer_string.c_str(), over_buffer_string.size(), - state_machine->dialect_options.state_machine_options.escape.GetValue(), - result.parse_chunk.data[result.chunk_col_id]); + if (!result.HandleTooManyColumnsError(over_buffer_string.c_str(), over_buffer_string.size())) { + value = RemoveEscape(over_buffer_string.c_str(), over_buffer_string.size(), + state_machine->dialect_options.state_machine_options.escape.GetValue(), + result.parse_chunk.data[result.chunk_col_id]); + } } } if (states.EmptyLine() && state_machine->dialect_options.num_cols == 1) { diff --git a/src/duckdb/src/execution/operator/csv_scanner/sniffer/header_detection.cpp b/src/duckdb/src/execution/operator/csv_scanner/sniffer/header_detection.cpp index 9475f594..4d69dc97 100644 --- a/src/duckdb/src/execution/operator/csv_scanner/sniffer/header_detection.cpp +++ b/src/duckdb/src/execution/operator/csv_scanner/sniffer/header_detection.cpp @@ -174,6 +174,7 @@ CSVSniffer::DetectHeaderInternal(ClientContext &context, vector &be CSVReaderOptions &options, CSVErrorHandler &error_handler) { vector detected_names; auto &dialect_options = state_machine.dialect_options; + dialect_options.num_cols = best_sql_types_candidates_per_column_idx.size(); if (best_header_row.empty()) { dialect_options.header = false; for (idx_t col = 0; col < dialect_options.num_cols; col++) { @@ -192,6 +193,19 @@ CSVSniffer::DetectHeaderInternal(ClientContext &context, vector &be // If null-padding is not allowed and there is a mismatch between our header candidate and the number of columns // We can't detect the dialect/type options properly if (!options.null_padding && best_sql_types_candidates_per_column_idx.size() != best_header_row.size()) { + if (options.ignore_errors.GetValue()) { + dialect_options.header = false; + for (idx_t col = 0; col < dialect_options.num_cols; col++) { + detected_names.push_back(GenerateColumnName(dialect_options.num_cols, col)); + } + dialect_options.rows_until_header += 1; + if (!options.columns_set) { + for (idx_t i = 0; i < MinValue(detected_names.size(), options.name_list.size()); i++) { + detected_names[i] = options.name_list[i]; + } + } + return detected_names; + } auto error = CSVError::HeaderSniffingError(options, best_header_row, best_sql_types_candidates_per_column_idx.size(), state_machine.dialect_options.state_machine_options.delimiter.GetValue()); diff --git a/src/duckdb/src/execution/operator/csv_scanner/state_machine/csv_state_machine_cache.cpp b/src/duckdb/src/execution/operator/csv_scanner/state_machine/csv_state_machine_cache.cpp index fd85567f..19cae335 100644 --- a/src/duckdb/src/execution/operator/csv_scanner/state_machine/csv_state_machine_cache.cpp +++ b/src/duckdb/src/execution/operator/csv_scanner/state_machine/csv_state_machine_cache.cpp @@ -89,7 +89,9 @@ void CSVStateMachineCache::Insert(const CSVStateMachineOptions &state_machine_op } } // 2) Field Separator State - transition_array[quote][static_cast(CSVState::DELIMITER)] = CSVState::QUOTED; + if (quote != '\0') { + transition_array[quote][static_cast(CSVState::DELIMITER)] = CSVState::QUOTED; + } if (delimiter_first_byte != ' ') { transition_array[' '][static_cast(CSVState::DELIMITER)] = CSVState::EMPTY_SPACE; } @@ -164,7 +166,9 @@ void CSVStateMachineCache::Insert(const CSVStateMachineOptions &state_machine_op transition_array[static_cast('\r')][static_cast(CSVState::RECORD_SEPARATOR)] = CSVState::RECORD_SEPARATOR; } - transition_array[quote][static_cast(CSVState::RECORD_SEPARATOR)] = CSVState::QUOTED; + if (quote != '\0') { + transition_array[quote][static_cast(CSVState::RECORD_SEPARATOR)] = CSVState::QUOTED; + } if (delimiter_first_byte != ' ') { transition_array[' '][static_cast(CSVState::RECORD_SEPARATOR)] = CSVState::EMPTY_SPACE; } @@ -180,7 +184,9 @@ void CSVStateMachineCache::Insert(const CSVStateMachineOptions &state_machine_op CSVState::RECORD_SEPARATOR; transition_array[static_cast('\r')][static_cast(CSVState::CARRIAGE_RETURN)] = CSVState::CARRIAGE_RETURN; - transition_array[quote][static_cast(CSVState::CARRIAGE_RETURN)] = CSVState::QUOTED; + if (quote != '\0') { + transition_array[quote][static_cast(CSVState::CARRIAGE_RETURN)] = CSVState::QUOTED; + } if (delimiter_first_byte != ' ') { transition_array[' '][static_cast(CSVState::CARRIAGE_RETURN)] = CSVState::EMPTY_SPACE; } @@ -240,7 +246,9 @@ void CSVStateMachineCache::Insert(const CSVStateMachineOptions &state_machine_op transition_array[static_cast('\r')][static_cast(CSVState::NOT_SET)] = CSVState::RECORD_SEPARATOR; } - transition_array[quote][static_cast(CSVState::NOT_SET)] = CSVState::QUOTED; + if (quote != '\0') { + transition_array[quote][static_cast(CSVState::NOT_SET)] = CSVState::QUOTED; + } if (delimiter_first_byte != ' ') { transition_array[' '][static_cast(CSVState::NOT_SET)] = CSVState::EMPTY_SPACE; } @@ -274,7 +282,9 @@ void CSVStateMachineCache::Insert(const CSVStateMachineOptions &state_machine_op transition_array[static_cast('\r')][static_cast(CSVState::EMPTY_SPACE)] = CSVState::RECORD_SEPARATOR; } - transition_array[quote][static_cast(CSVState::EMPTY_SPACE)] = CSVState::QUOTED; + if (quote != '\0') { + transition_array[quote][static_cast(CSVState::EMPTY_SPACE)] = CSVState::QUOTED; + } if (comment != '\0') { transition_array[comment][static_cast(CSVState::EMPTY_SPACE)] = CSVState::COMMENT; } diff --git a/src/duckdb/src/execution/operator/csv_scanner/util/csv_error.cpp b/src/duckdb/src/execution/operator/csv_scanner/util/csv_error.cpp index 0aa0afa4..cbb58644 100644 --- a/src/duckdb/src/execution/operator/csv_scanner/util/csv_error.cpp +++ b/src/duckdb/src/execution/operator/csv_scanner/util/csv_error.cpp @@ -329,12 +329,13 @@ CSVError CSVError::IncorrectColumnAmountError(const CSVReaderOptions &options, i } // How many columns were expected and how many were found error << "Expected Number of Columns: " << options.dialect_options.num_cols << " Found: " << actual_columns + 1; + idx_t byte_pos = byte_position.GetIndex() == 0 ? 0 : byte_position.GetIndex() - 1; if (actual_columns >= options.dialect_options.num_cols) { - return CSVError(error.str(), TOO_MANY_COLUMNS, actual_columns, csv_row, error_info, row_byte_position, - byte_position.GetIndex() - 1, options, how_to_fix_it.str(), current_path); + return CSVError(error.str(), TOO_MANY_COLUMNS, actual_columns, csv_row, error_info, row_byte_position, byte_pos, + options, how_to_fix_it.str(), current_path); } else { - return CSVError(error.str(), TOO_FEW_COLUMNS, actual_columns, csv_row, error_info, row_byte_position, - byte_position.GetIndex() - 1, options, how_to_fix_it.str(), current_path); + return CSVError(error.str(), TOO_FEW_COLUMNS, actual_columns, csv_row, error_info, row_byte_position, byte_pos, + options, how_to_fix_it.str(), current_path); } } diff --git a/src/duckdb/src/execution/operator/csv_scanner/util/csv_reader_options.cpp b/src/duckdb/src/execution/operator/csv_scanner/util/csv_reader_options.cpp index 4cf65382..2b05b242 100644 --- a/src/duckdb/src/execution/operator/csv_scanner/util/csv_reader_options.cpp +++ b/src/duckdb/src/execution/operator/csv_scanner/util/csv_reader_options.cpp @@ -241,7 +241,11 @@ void CSVReaderOptions::SetReadOption(const string &loption, const Value &value, } else if (loption == "skip") { SetSkipRows(ParseInteger(value, loption)); } else if (loption == "max_line_size" || loption == "maximum_line_size") { - maximum_line_size = NumericCast(ParseInteger(value, loption)); + auto line_size = ParseInteger(value, loption); + if (line_size < 0) { + throw BinderException("Invalid value for MAX_LINE_SIZE parameter: it cannot be smaller than 0"); + } + maximum_line_size = NumericCast(line_size); } else if (loption == "date_format" || loption == "dateformat") { string format = ParseString(value, loption); SetDateFormat(LogicalTypeId::DATE, format, true); @@ -272,6 +276,9 @@ void CSVReaderOptions::SetReadOption(const string &loption, const Value &value, if (!expected_names.empty()) { force_not_null = ParseColumnList(value, expected_names, loption); } else { + if (value.IsNull()) { + throw BinderException("Invalid value for 'force_not_null' paramenter"); + } // Get the list of columns to use as a recovery key auto &children = ListValue::GetChildren(value); for (auto &child : children) { diff --git a/src/duckdb/src/execution/operator/join/physical_hash_join.cpp b/src/duckdb/src/execution/operator/join/physical_hash_join.cpp index c8ae9747..dcff82f0 100644 --- a/src/duckdb/src/execution/operator/join/physical_hash_join.cpp +++ b/src/duckdb/src/execution/operator/join/physical_hash_join.cpp @@ -137,7 +137,8 @@ class HashJoinGlobalSinkState : public GlobalSinkState { : context(context_p), op(op_p), num_threads(NumericCast(TaskScheduler::GetScheduler(context).NumberOfThreads())), temporary_memory_state(TemporaryMemoryManager::Get(context).Register(context)), finalized(false), - active_local_states(0), total_size(0), max_partition_size(0), max_partition_count(0), scanned_data(false) { + active_local_states(0), total_size(0), max_partition_size(0), max_partition_count(0), + probe_side_requirement(0), scanned_data(false) { hash_table = op.InitializeHashTable(context); // For perfect hash join @@ -188,6 +189,7 @@ class HashJoinGlobalSinkState : public GlobalSinkState { idx_t total_size; idx_t max_partition_size; idx_t max_partition_count; + idx_t probe_side_requirement; //! Hash tables built by each thread vector> local_hash_tables; @@ -401,9 +403,16 @@ static idx_t GetPartitioningSpaceRequirement(ClientContext &context, const vecto void PhysicalHashJoin::PrepareFinalize(ClientContext &context, GlobalSinkState &global_state) const { auto &gstate = global_state.Cast(); - auto &ht = *gstate.hash_table; + const auto &ht = *gstate.hash_table; + gstate.total_size = ht.GetTotalSize(gstate.local_hash_tables, gstate.max_partition_size, gstate.max_partition_count); + gstate.probe_side_requirement = + GetPartitioningSpaceRequirement(context, children[0]->types, ht.GetRadixBits(), gstate.num_threads); + const auto max_partition_ht_size = + gstate.max_partition_size + JoinHashTable::PointerTableSize(gstate.max_partition_count); + gstate.temporary_memory_state->SetMinimumReservation(max_partition_ht_size + gstate.probe_side_requirement); + bool all_constant; gstate.temporary_memory_state->SetMaterializationPenalty(GetTupleWidth(children[0]->types, all_constant)); gstate.temporary_memory_state->SetRemainingSize(gstate.total_size); @@ -446,7 +455,16 @@ class HashJoinFinalizeEvent : public BasePipelineEvent { auto &ht = *sink.hash_table; const auto chunk_count = ht.GetDataCollection().ChunkCount(); const auto num_threads = NumericCast(sink.num_threads); - if (num_threads == 1 || (ht.Count() < PARALLEL_CONSTRUCT_THRESHOLD && !context.config.verify_parallelism)) { + + // If the data is very skewed (many of the exact same key), our finalize will become slow, + // due to completely slamming the same atomic using compare-and-swaps. + // We can detect this because we partition the data, and go for a single-threaded finalize instead. + const auto max_partition_ht_size = + sink.max_partition_size + JoinHashTable::PointerTableSize(sink.max_partition_count); + const auto skew = static_cast(max_partition_ht_size) / static_cast(sink.total_size); + + if (num_threads == 1 || (ht.Count() < PARALLEL_CONSTRUCT_THRESHOLD && skew > SKEW_SINGLE_THREADED_THRESHOLD && + !context.config.verify_parallelism)) { // Single-threaded finalize finalize_tasks.push_back( make_uniq(shared_from_this(), context, sink, 0U, chunk_count, false, sink.op)); @@ -469,6 +487,7 @@ class HashJoinFinalizeEvent : public BasePipelineEvent { static constexpr idx_t PARALLEL_CONSTRUCT_THRESHOLD = 1048576; static constexpr idx_t CHUNKS_PER_TASK = 64; + static constexpr double SKEW_SINGLE_THREADED_THRESHOLD = 0.33; }; void HashJoinGlobalSinkState::ScheduleFinalize(Pipeline &pipeline, Event &event) { @@ -567,15 +586,17 @@ class HashJoinRepartitionEvent : public BasePipelineEvent { vector partition_counts(num_partitions, 0); sink.total_size = sink.hash_table->GetTotalSize(partition_sizes, partition_counts, sink.max_partition_size, sink.max_partition_count); - const auto probe_side_requirement = + sink.probe_side_requirement = GetPartitioningSpaceRequirement(sink.context, op.types, sink.hash_table->GetRadixBits(), sink.num_threads); sink.temporary_memory_state->SetMinimumReservation(sink.max_partition_size + JoinHashTable::PointerTableSize(sink.max_partition_count) + - probe_side_requirement); + sink.probe_side_requirement); sink.temporary_memory_state->UpdateReservation(executor.context); - sink.hash_table->PrepareExternalFinalize(sink.temporary_memory_state->GetReservation()); + D_ASSERT(sink.temporary_memory_state->GetReservation() >= sink.probe_side_requirement); + sink.hash_table->PrepareExternalFinalize(sink.temporary_memory_state->GetReservation() - + sink.probe_side_requirement); sink.ScheduleFinalize(*pipeline, *this); } }; @@ -695,22 +716,22 @@ SinkFinalizeType PhysicalHashJoin::Finalize(Pipeline &pipeline, Event &event, Cl sink.max_partition_size + JoinHashTable::PointerTableSize(sink.max_partition_count); const auto very_very_skewed = // No point in repartitioning if it's this skewed static_cast(max_partition_ht_size) >= 0.8 * static_cast(sink.total_size); - if (!very_very_skewed && max_partition_ht_size > sink.temporary_memory_state->GetReservation()) { + if (!very_very_skewed && + (max_partition_ht_size + sink.probe_side_requirement) > sink.temporary_memory_state->GetReservation()) { // We have to repartition ht.SetRepartitionRadixBits(sink.temporary_memory_state->GetReservation(), sink.max_partition_size, sink.max_partition_count); auto new_event = make_shared_ptr(pipeline, *this, sink, sink.local_hash_tables); event.InsertEvent(std::move(new_event)); } else { - // No repartitioning! We do need some space for partitioning the probe-side, though - const auto probe_side_requirement = - GetPartitioningSpaceRequirement(context, children[0]->types, ht.GetRadixBits(), sink.num_threads); - sink.temporary_memory_state->SetMinimumReservation(max_partition_ht_size + probe_side_requirement); + // No repartitioning! for (auto &local_ht : sink.local_hash_tables) { ht.Merge(*local_ht); } sink.local_hash_tables.clear(); - sink.hash_table->PrepareExternalFinalize(sink.temporary_memory_state->GetReservation()); + D_ASSERT(sink.temporary_memory_state->GetReservation() >= sink.probe_side_requirement); + sink.hash_table->PrepareExternalFinalize(sink.temporary_memory_state->GetReservation() - + sink.probe_side_requirement); sink.ScheduleFinalize(pipeline, event); } sink.finalized = true; @@ -1041,10 +1062,13 @@ void HashJoinGlobalSourceState::PrepareBuild(HashJoinGlobalSinkState &sink) { auto &ht = *sink.hash_table; // Update remaining size - sink.temporary_memory_state->SetRemainingSizeAndUpdateReservation(sink.context, ht.GetRemainingSize()); + sink.temporary_memory_state->SetRemainingSizeAndUpdateReservation(sink.context, ht.GetRemainingSize() + + sink.probe_side_requirement); // Try to put the next partitions in the block collection of the HT - if (!sink.external || !ht.PrepareExternalFinalize(sink.temporary_memory_state->GetReservation())) { + D_ASSERT(!sink.external || sink.temporary_memory_state->GetReservation() >= sink.probe_side_requirement); + if (!sink.external || + !ht.PrepareExternalFinalize(sink.temporary_memory_state->GetReservation() - sink.probe_side_requirement)) { global_stage = HashJoinSourceStage::DONE; sink.temporary_memory_state->SetZero(); return; @@ -1060,7 +1084,20 @@ void HashJoinGlobalSourceState::PrepareBuild(HashJoinGlobalSinkState &sink) { build_chunk_count = data_collection.ChunkCount(); build_chunk_done = 0; - build_chunks_per_thread = MaxValue((build_chunk_count + sink.num_threads - 1) / sink.num_threads, 1); + if (sink.context.config.verify_parallelism) { + build_chunks_per_thread = 1; + } else { + const auto max_partition_ht_size = + sink.max_partition_size + JoinHashTable::PointerTableSize(sink.max_partition_count); + const auto skew = static_cast(max_partition_ht_size) / static_cast(sink.total_size); + + if (skew > HashJoinFinalizeEvent::SKEW_SINGLE_THREADED_THRESHOLD) { + build_chunks_per_thread = build_chunk_count; // This forces single-threaded building + } else { + build_chunks_per_thread = // Same task size as in HashJoinFinalizeEvent + MaxValue(MinValue(build_chunk_count, HashJoinFinalizeEvent::CHUNKS_PER_TASK), 1); + } + } ht.InitializePointerTable(); @@ -1308,22 +1345,20 @@ ProgressData PhysicalHashJoin::GetProgress(ClientContext &context, GlobalSourceS return res; } - auto num_partitions = static_cast(RadixPartitioning::NumberOfPartitions(sink.hash_table->GetRadixBits())); - auto partition_start = static_cast(sink.hash_table->GetPartitionStart()); - // auto partition_end = static_cast(sink.hash_table->GetPartitionEnd()); + const auto &ht = *sink.hash_table; + const auto num_partitions = static_cast(RadixPartitioning::NumberOfPartitions(ht.GetRadixBits())); - // This many partitions are fully done - res.done = partition_start; + res.done = static_cast(ht.FinishedPartitionCount()); res.total = num_partitions; - auto probe_chunk_done = static_cast(gstate.probe_chunk_done); - auto probe_chunk_count = static_cast(gstate.probe_chunk_count); + const auto probe_chunk_done = static_cast(gstate.probe_chunk_done); + const auto probe_chunk_count = static_cast(gstate.probe_chunk_count); if (probe_chunk_count != 0) { - // Progress of the current round of probing, weighed by the number of partitions + // Progress of the current round of probing auto probe_progress = probe_chunk_done / probe_chunk_count; - // Add it to the progress, weighed by the number of partitions in the current round - // progress += (partition_end - partition_start) / num_partitions * probe_progress; - // TODO also also me, fixup using somehow `partition_end - partition_start` + // Weighed by the number of partitions + probe_progress *= static_cast(ht.CurrentPartitionCount()); + // Add it to the progress res.done += probe_progress; } diff --git a/src/duckdb/src/execution/sample/reservoir_sample.cpp b/src/duckdb/src/execution/sample/reservoir_sample.cpp index eef10fca..1e46f228 100644 --- a/src/duckdb/src/execution/sample/reservoir_sample.cpp +++ b/src/duckdb/src/execution/sample/reservoir_sample.cpp @@ -504,8 +504,8 @@ void ReservoirSample::EvictOverBudgetSamples() { auto types = reservoir_chunk->chunk.GetTypes(); D_ASSERT(num_samples_to_keep <= sample_count); D_ASSERT(stats_sample); - D_ASSERT(sample_count == STANDARD_VECTOR_SIZE); - auto new_reservoir_chunk = CreateNewSampleChunk(types, STANDARD_VECTOR_SIZE); + D_ASSERT(sample_count == FIXED_SAMPLE_SIZE); + auto new_reservoir_chunk = CreateNewSampleChunk(types, FIXED_SAMPLE_SIZE); // The current selection vector can potentially have 2048 valid mappings. // If we need to save a sample with less rows than that, we need to do the following @@ -716,7 +716,7 @@ void ReservoirSample::AddToReservoir(DataChunk &chunk) { idx_t tuples_consumed = FillReservoir(chunk); base_reservoir_sample->num_entries_seen_total += tuples_consumed; - D_ASSERT(reservoir_chunk->chunk.size() >= 1); + D_ASSERT(sample_count == 0 || reservoir_chunk->chunk.size() >= 1); if (tuples_consumed == chunk.size()) { return; diff --git a/src/duckdb/src/function/table/version/pragma_version.cpp b/src/duckdb/src/function/table/version/pragma_version.cpp index 088c82dd..e7e0a610 100644 --- a/src/duckdb/src/function/table/version/pragma_version.cpp +++ b/src/duckdb/src/function/table/version/pragma_version.cpp @@ -1,5 +1,5 @@ #ifndef DUCKDB_PATCH_VERSION -#define DUCKDB_PATCH_VERSION "4-dev3666" +#define DUCKDB_PATCH_VERSION "4-dev3722" #endif #ifndef DUCKDB_MINOR_VERSION #define DUCKDB_MINOR_VERSION 1 @@ -8,10 +8,10 @@ #define DUCKDB_MAJOR_VERSION 1 #endif #ifndef DUCKDB_VERSION -#define DUCKDB_VERSION "v1.1.4-dev3666" +#define DUCKDB_VERSION "v1.1.4-dev3722" #endif #ifndef DUCKDB_SOURCE_ID -#define DUCKDB_SOURCE_ID "35939c850f" +#define DUCKDB_SOURCE_ID "62582045a3" #endif #include "duckdb/function/table/system_functions.hpp" #include "duckdb/main/database.hpp" diff --git a/src/duckdb/src/function/window/window_boundaries_state.cpp b/src/duckdb/src/function/window/window_boundaries_state.cpp index f0f65bbe..52fe91e2 100644 --- a/src/duckdb/src/function/window/window_boundaries_state.cpp +++ b/src/duckdb/src/function/window/window_boundaries_state.cpp @@ -306,12 +306,18 @@ WindowBoundsSet WindowBoundariesState::GetWindowBounds(const BoundWindowExpressi case ExpressionType::WINDOW_RANK_DENSE: case ExpressionType::WINDOW_RANK: result.insert(PARTITION_BEGIN); - result.insert(PEER_BEGIN); + if (wexpr.arg_orders.empty()) { + result.insert(PEER_BEGIN); + } else { + result.insert(PARTITION_END); + } break; case ExpressionType::WINDOW_PERCENT_RANK: result.insert(PARTITION_BEGIN); result.insert(PARTITION_END); - result.insert(PEER_BEGIN); + if (wexpr.arg_orders.empty()) { + result.insert(PEER_BEGIN); + } break; case ExpressionType::WINDOW_CUME_DIST: result.insert(PARTITION_BEGIN); diff --git a/src/duckdb/src/function/window/window_index_tree.cpp b/src/duckdb/src/function/window/window_index_tree.cpp index c9dcb6d5..c71984f5 100644 --- a/src/duckdb/src/function/window/window_index_tree.cpp +++ b/src/duckdb/src/function/window/window_index_tree.cpp @@ -7,27 +7,7 @@ namespace duckdb { WindowIndexTree::WindowIndexTree(ClientContext &context, const vector &orders, const vector &sort_idx, const idx_t count) - : context(context), memory_per_thread(PhysicalOperator::GetMaxThreadMemory(context)), sort_idx(sort_idx), - build_stage(PartitionSortStage::INIT), tasks_completed(0) { - // Sort the unfiltered indices by the orders - LogicalType index_type; - if (count < std::numeric_limits::max()) { - index_type = LogicalType::INTEGER; - mst32 = make_uniq(); - } else { - index_type = LogicalType::BIGINT; - mst64 = make_uniq(); - } - - vector payload_types; - payload_types.emplace_back(index_type); - - RowLayout payload_layout; - payload_layout.Initialize(payload_types); - - auto &buffer_manager = BufferManager::GetBufferManager(context); - global_sort = make_uniq(buffer_manager, orders, payload_layout); - global_sort->external = ClientConfig::GetConfig(context).force_external; + : WindowMergeSortTree(context, orders, sort_idx, count) { } WindowIndexTree::WindowIndexTree(ClientContext &context, const BoundOrderModifier &order_bys, @@ -35,91 +15,12 @@ WindowIndexTree::WindowIndexTree(ClientContext &context, const BoundOrderModifie : WindowIndexTree(context, order_bys.orders, sort_idx, count) { } -optional_ptr WindowIndexTree::AddLocalSort() { - lock_guard local_sort_guard(lock); - auto local_sort = make_uniq(); - local_sort->Initialize(*global_sort, global_sort->buffer_manager); - local_sorts.emplace_back(std::move(local_sort)); - - return local_sorts.back().get(); -} - unique_ptr WindowIndexTree::GetLocalState() { return make_uniq(*this); } -WindowIndexTreeLocalState::WindowIndexTreeLocalState(WindowIndexTree &index_tree) : index_tree(index_tree) { - sort_chunk.Initialize(index_tree.context, index_tree.global_sort->sort_layout.logical_types); - payload_chunk.Initialize(index_tree.context, index_tree.global_sort->payload_layout.GetTypes()); - local_sort = index_tree.AddLocalSort(); -} - -void WindowIndexTreeLocalState::SinkChunk(DataChunk &chunk, const idx_t row_idx, - optional_ptr filter_sel, idx_t filtered) { - // Reference the sort columns - auto &sort_idx = index_tree.sort_idx; - for (column_t c = 0; c < sort_idx.size(); ++c) { - sort_chunk.data[c].Reference(chunk.data[sort_idx[c]]); - } - sort_chunk.SetCardinality(chunk); - - // Sequence the payload column - auto &indices = payload_chunk.data[0]; - payload_chunk.SetCardinality(sort_chunk); - indices.Sequence(int64_t(row_idx), 1, payload_chunk.size()); - - // Apply FILTER clause, if any - if (filter_sel) { - sort_chunk.Slice(*filter_sel, filtered); - payload_chunk.Slice(*filter_sel, filtered); - } - - local_sort->SinkChunk(sort_chunk, payload_chunk); - - // Flush if we have too much data - if (local_sort->SizeInBytes() > index_tree.memory_per_thread) { - local_sort->Sort(*index_tree.global_sort, true); - } -} - -void WindowIndexTreeLocalState::ExecuteSortTask() { - switch (build_stage) { - case PartitionSortStage::SCAN: - index_tree.global_sort->AddLocalState(*index_tree.local_sorts[build_task]); - break; - case PartitionSortStage::MERGE: { - auto &global_sort = *index_tree.global_sort; - MergeSorter merge_sorter(global_sort, global_sort.buffer_manager); - merge_sorter.PerformInMergeRound(); - break; - } - case PartitionSortStage::SORTED: - BuildLeaves(); - break; - default: - break; - } - - ++index_tree.tasks_completed; -} - -void WindowIndexTree::MeasurePayloadBlocks() { - const auto &blocks = global_sort->sorted_blocks[0]->payload_data->data_blocks; - idx_t count = 0; - for (const auto &block : blocks) { - block_starts.emplace_back(count); - count += block->count; - } - block_starts.emplace_back(count); - - // Allocate the leaves. - if (mst32) { - mst32->Allocate(count); - mst32->LowestLevel().resize(count); - } else if (mst64) { - mst64->Allocate(count); - mst64->LowestLevel().resize(count); - } +WindowIndexTreeLocalState::WindowIndexTreeLocalState(WindowIndexTree &index_tree) + : WindowMergeSortTreeLocalState(index_tree), index_tree(index_tree) { } void WindowIndexTreeLocalState::BuildLeaves() { @@ -151,115 +52,6 @@ void WindowIndexTreeLocalState::BuildLeaves() { } } -void WindowIndexTree::CleanupSort() { - global_sort.reset(); - local_sorts.clear(); -} - -bool WindowIndexTree::TryPrepareSortStage(WindowIndexTreeLocalState &lstate) { - lock_guard stage_guard(lock); - - switch (build_stage.load()) { - case PartitionSortStage::INIT: - total_tasks = local_sorts.size(); - tasks_assigned = 0; - tasks_completed = 0; - lstate.build_stage = build_stage = PartitionSortStage::SCAN; - lstate.build_task = tasks_assigned++; - return true; - case PartitionSortStage::SCAN: - // Process all the local sorts - if (tasks_assigned < total_tasks) { - lstate.build_stage = PartitionSortStage::SCAN; - lstate.build_task = tasks_assigned++; - return true; - } else if (tasks_completed < tasks_assigned) { - return false; - } - global_sort->PrepareMergePhase(); - if (!(global_sort->sorted_blocks.size() / 2)) { - if (global_sort->sorted_blocks.empty()) { - lstate.build_stage = build_stage = PartitionSortStage::FINISHED; - return true; - } - MeasurePayloadBlocks(); - total_tasks = block_starts.size() - 1; - tasks_completed = 0; - tasks_assigned = 0; - lstate.build_stage = build_stage = PartitionSortStage::SORTED; - lstate.build_task = tasks_assigned++; - return true; - } - global_sort->InitializeMergeRound(); - lstate.build_stage = build_stage = PartitionSortStage::MERGE; - total_tasks = local_sorts.size(); - tasks_assigned = 1; - tasks_completed = 0; - return true; - case PartitionSortStage::MERGE: - if (tasks_assigned < total_tasks) { - lstate.build_stage = PartitionSortStage::MERGE; - ++tasks_assigned; - return true; - } else if (tasks_completed < tasks_assigned) { - return false; - } - global_sort->CompleteMergeRound(true); - if (!(global_sort->sorted_blocks.size() / 2)) { - MeasurePayloadBlocks(); - total_tasks = block_starts.size() - 1; - tasks_completed = 0; - tasks_assigned = 0; - lstate.build_stage = build_stage = PartitionSortStage::SORTED; - lstate.build_task = tasks_assigned++; - return true; - } - global_sort->InitializeMergeRound(); - lstate.build_stage = PartitionSortStage::MERGE; - total_tasks = local_sorts.size(); - tasks_assigned = 1; - tasks_completed = 0; - return true; - case PartitionSortStage::SORTED: - if (tasks_assigned < total_tasks) { - lstate.build_stage = PartitionSortStage::SORTED; - lstate.build_task = tasks_assigned++; - return true; - } else if (tasks_completed < tasks_assigned) { - lstate.build_stage = PartitionSortStage::FINISHED; - // Sleep while other tasks finish - return false; - } - CleanupSort(); - break; - default: - break; - } - - lstate.build_stage = build_stage = PartitionSortStage::FINISHED; - - return true; -} - -void WindowIndexTreeLocalState::Sort() { - // Sort, merge and build the tree in parallel - while (index_tree.build_stage.load() != PartitionSortStage::FINISHED) { - if (index_tree.TryPrepareSortStage(*this)) { - ExecuteSortTask(); - } else { - std::this_thread::yield(); - } - } -} - -void WindowIndexTree::Build() { - if (mst32) { - mst32->Build(); - } else { - mst64->Build(); - } -} - idx_t WindowIndexTree::SelectNth(const SubFrames &frames, idx_t n) const { if (mst32) { return mst32->NthElement(mst32->SelectNth(frames, n)); diff --git a/src/duckdb/src/function/window/window_merge_sort_tree.cpp b/src/duckdb/src/function/window/window_merge_sort_tree.cpp new file mode 100644 index 00000000..c1e7b11e --- /dev/null +++ b/src/duckdb/src/function/window/window_merge_sort_tree.cpp @@ -0,0 +1,257 @@ +#include "duckdb/function/window/window_merge_sort_tree.hpp" + +#include +#include + +namespace duckdb { + +WindowMergeSortTree::WindowMergeSortTree(ClientContext &context, const vector &orders, + const vector &sort_idx, const idx_t count) + : context(context), memory_per_thread(PhysicalOperator::GetMaxThreadMemory(context)), sort_idx(sort_idx), + build_stage(PartitionSortStage::INIT), tasks_completed(0) { + // Sort the unfiltered indices by the orders + LogicalType index_type; + if (count < std::numeric_limits::max()) { + index_type = LogicalType::INTEGER; + mst32 = make_uniq(); + } else { + index_type = LogicalType::BIGINT; + mst64 = make_uniq(); + } + + vector payload_types; + payload_types.emplace_back(index_type); + + RowLayout payload_layout; + payload_layout.Initialize(payload_types); + + auto &buffer_manager = BufferManager::GetBufferManager(context); + global_sort = make_uniq(buffer_manager, orders, payload_layout); + global_sort->external = ClientConfig::GetConfig(context).force_external; +} + +optional_ptr WindowMergeSortTree::AddLocalSort() { + lock_guard local_sort_guard(lock); + auto local_sort = make_uniq(); + local_sort->Initialize(*global_sort, global_sort->buffer_manager); + local_sorts.emplace_back(std::move(local_sort)); + + return local_sorts.back().get(); +} + +WindowMergeSortTreeLocalState::WindowMergeSortTreeLocalState(WindowMergeSortTree &window_tree) + : window_tree(window_tree) { + sort_chunk.Initialize(window_tree.context, window_tree.global_sort->sort_layout.logical_types); + payload_chunk.Initialize(window_tree.context, window_tree.global_sort->payload_layout.GetTypes()); + local_sort = window_tree.AddLocalSort(); +} + +void WindowMergeSortTreeLocalState::SinkChunk(DataChunk &chunk, const idx_t row_idx, + optional_ptr filter_sel, idx_t filtered) { + // Reference the sort columns + auto &sort_idx = window_tree.sort_idx; + for (column_t c = 0; c < sort_idx.size(); ++c) { + sort_chunk.data[c].Reference(chunk.data[sort_idx[c]]); + } + sort_chunk.SetCardinality(chunk); + + // Sequence the payload column + auto &indices = payload_chunk.data[0]; + payload_chunk.SetCardinality(sort_chunk); + indices.Sequence(int64_t(row_idx), 1, payload_chunk.size()); + + // Apply FILTER clause, if any + if (filter_sel) { + sort_chunk.Slice(*filter_sel, filtered); + payload_chunk.Slice(*filter_sel, filtered); + } + + local_sort->SinkChunk(sort_chunk, payload_chunk); + + // Flush if we have too much data + if (local_sort->SizeInBytes() > window_tree.memory_per_thread) { + local_sort->Sort(*window_tree.global_sort, true); + } +} + +void WindowMergeSortTreeLocalState::ExecuteSortTask() { + switch (build_stage) { + case PartitionSortStage::SCAN: + window_tree.global_sort->AddLocalState(*window_tree.local_sorts[build_task]); + break; + case PartitionSortStage::MERGE: { + auto &global_sort = *window_tree.global_sort; + MergeSorter merge_sorter(global_sort, global_sort.buffer_manager); + merge_sorter.PerformInMergeRound(); + break; + } + case PartitionSortStage::SORTED: + BuildLeaves(); + break; + default: + break; + } + + ++window_tree.tasks_completed; +} + +idx_t WindowMergeSortTree::MeasurePayloadBlocks() { + const auto &blocks = global_sort->sorted_blocks[0]->payload_data->data_blocks; + idx_t count = 0; + for (const auto &block : blocks) { + block_starts.emplace_back(count); + count += block->count; + } + block_starts.emplace_back(count); + + // Allocate the leaves. + if (mst32) { + mst32->Allocate(count); + mst32->LowestLevel().resize(count); + } else if (mst64) { + mst64->Allocate(count); + mst64->LowestLevel().resize(count); + } + + return count; +} + +void WindowMergeSortTreeLocalState::BuildLeaves() { + auto &global_sort = *window_tree.global_sort; + if (global_sort.sorted_blocks.empty()) { + return; + } + + PayloadScanner scanner(global_sort, build_task); + idx_t row_idx = window_tree.block_starts[build_task]; + for (;;) { + payload_chunk.Reset(); + scanner.Scan(payload_chunk); + const auto count = payload_chunk.size(); + if (count == 0) { + break; + } + auto &indices = payload_chunk.data[0]; + if (window_tree.mst32) { + auto &sorted = window_tree.mst32->LowestLevel(); + auto data = FlatVector::GetData(indices); + std::copy(data, data + count, sorted.data() + row_idx); + } else { + auto &sorted = window_tree.mst64->LowestLevel(); + auto data = FlatVector::GetData(indices); + std::copy(data, data + count, sorted.data() + row_idx); + } + row_idx += count; + } +} + +void WindowMergeSortTree::CleanupSort() { + global_sort.reset(); + local_sorts.clear(); +} + +bool WindowMergeSortTree::TryPrepareSortStage(WindowMergeSortTreeLocalState &lstate) { + lock_guard stage_guard(lock); + + switch (build_stage.load()) { + case PartitionSortStage::INIT: + total_tasks = local_sorts.size(); + tasks_assigned = 0; + tasks_completed = 0; + lstate.build_stage = build_stage = PartitionSortStage::SCAN; + lstate.build_task = tasks_assigned++; + return true; + case PartitionSortStage::SCAN: + // Process all the local sorts + if (tasks_assigned < total_tasks) { + lstate.build_stage = PartitionSortStage::SCAN; + lstate.build_task = tasks_assigned++; + return true; + } else if (tasks_completed < tasks_assigned) { + return false; + } + global_sort->PrepareMergePhase(); + if (!(global_sort->sorted_blocks.size() / 2)) { + if (global_sort->sorted_blocks.empty()) { + lstate.build_stage = build_stage = PartitionSortStage::FINISHED; + return true; + } + MeasurePayloadBlocks(); + total_tasks = block_starts.size() - 1; + tasks_completed = 0; + tasks_assigned = 0; + lstate.build_stage = build_stage = PartitionSortStage::SORTED; + lstate.build_task = tasks_assigned++; + return true; + } + global_sort->InitializeMergeRound(); + lstate.build_stage = build_stage = PartitionSortStage::MERGE; + total_tasks = local_sorts.size(); + tasks_assigned = 1; + tasks_completed = 0; + return true; + case PartitionSortStage::MERGE: + if (tasks_assigned < total_tasks) { + lstate.build_stage = PartitionSortStage::MERGE; + ++tasks_assigned; + return true; + } else if (tasks_completed < tasks_assigned) { + return false; + } + global_sort->CompleteMergeRound(true); + if (!(global_sort->sorted_blocks.size() / 2)) { + MeasurePayloadBlocks(); + total_tasks = block_starts.size() - 1; + tasks_completed = 0; + tasks_assigned = 0; + lstate.build_stage = build_stage = PartitionSortStage::SORTED; + lstate.build_task = tasks_assigned++; + return true; + } + global_sort->InitializeMergeRound(); + lstate.build_stage = PartitionSortStage::MERGE; + total_tasks = local_sorts.size(); + tasks_assigned = 1; + tasks_completed = 0; + return true; + case PartitionSortStage::SORTED: + if (tasks_assigned < total_tasks) { + lstate.build_stage = PartitionSortStage::SORTED; + lstate.build_task = tasks_assigned++; + return true; + } else if (tasks_completed < tasks_assigned) { + lstate.build_stage = PartitionSortStage::FINISHED; + // Sleep while other tasks finish + return false; + } + CleanupSort(); + break; + default: + break; + } + + lstate.build_stage = build_stage = PartitionSortStage::FINISHED; + + return true; +} + +void WindowMergeSortTreeLocalState::Sort() { + // Sort, merge and build the tree in parallel + while (window_tree.build_stage.load() != PartitionSortStage::FINISHED) { + if (window_tree.TryPrepareSortStage(*this)) { + ExecuteSortTask(); + } else { + std::this_thread::yield(); + } + } +} + +void WindowMergeSortTree::Build() { + if (mst32) { + mst32->Build(); + } else { + mst64->Build(); + } +} + +} // namespace duckdb diff --git a/src/duckdb/src/function/window/window_rank_function.cpp b/src/duckdb/src/function/window/window_rank_function.cpp index a8d028b8..c5dcbc63 100644 --- a/src/duckdb/src/function/window/window_rank_function.cpp +++ b/src/duckdb/src/function/window/window_rank_function.cpp @@ -1,25 +1,80 @@ #include "duckdb/function/window/window_rank_function.hpp" +#include "duckdb/function/window/window_shared_expressions.hpp" +#include "duckdb/function/window/window_token_tree.hpp" +#include "duckdb/planner/expression/bound_window_expression.hpp" namespace duckdb { //===--------------------------------------------------------------------===// -// WindowPeerState +// WindowPeerGlobalState //===--------------------------------------------------------------------===// -// Base class for non-aggregate functions that use peer boundaries -class WindowPeerState : public WindowExecutorBoundsState { +class WindowPeerGlobalState : public WindowExecutorGlobalState { public: - explicit WindowPeerState(const WindowExecutorGlobalState &gstate) : WindowExecutorBoundsState(gstate) { + WindowPeerGlobalState(const WindowPeerExecutor &executor, const idx_t payload_count, + const ValidityMask &partition_mask, const ValidityMask &order_mask) + : WindowExecutorGlobalState(executor, payload_count, partition_mask, order_mask) { + if (!executor.arg_order_idx.empty()) { + token_tree = make_uniq(executor.context, executor.wexpr.arg_orders, executor.arg_order_idx, + payload_count); + } } + //! The token tree for ORDER BY arguments + unique_ptr token_tree; +}; + +//===--------------------------------------------------------------------===// +// WindowPeerLocalState +//===--------------------------------------------------------------------===// +// Base class for non-aggregate functions that use peer boundaries +class WindowPeerLocalState : public WindowExecutorBoundsState { public: + explicit WindowPeerLocalState(const WindowPeerGlobalState &gpstate) + : WindowExecutorBoundsState(gpstate), gpstate(gpstate) { + if (gpstate.token_tree) { + local_tree = gpstate.token_tree->GetLocalState(); + } + } + + //! Accumulate the secondary sort values + void Sink(WindowExecutorGlobalState &gstate, DataChunk &sink_chunk, DataChunk &coll_chunk, + idx_t input_idx) override; + //! Finish the sinking and prepare to scan + void Finalize(WindowExecutorGlobalState &gstate, CollectionPtr collection) override; + + void NextRank(idx_t partition_begin, idx_t peer_begin, idx_t row_idx); + uint64_t dense_rank = 1; uint64_t rank_equal = 0; uint64_t rank = 1; - void NextRank(idx_t partition_begin, idx_t peer_begin, idx_t row_idx); + //! The corresponding global peer state + const WindowPeerGlobalState &gpstate; + //! The optional sorting state for secondary sorts + unique_ptr local_tree; }; -void WindowPeerState::NextRank(idx_t partition_begin, idx_t peer_begin, idx_t row_idx) { +void WindowPeerLocalState::Sink(WindowExecutorGlobalState &gstate, DataChunk &sink_chunk, DataChunk &coll_chunk, + idx_t input_idx) { + WindowExecutorBoundsState::Sink(gstate, sink_chunk, coll_chunk, input_idx); + + if (local_tree) { + auto &local_tokens = local_tree->Cast(); + local_tokens.SinkChunk(sink_chunk, input_idx, nullptr, 0); + } +} + +void WindowPeerLocalState::Finalize(WindowExecutorGlobalState &gstate, CollectionPtr collection) { + WindowExecutorBoundsState::Finalize(gstate, collection); + + if (local_tree) { + auto &local_tokens = local_tree->Cast(); + local_tokens.Sort(); + local_tokens.window_tree.Build(); + } +} + +void WindowPeerLocalState::NextRank(idx_t partition_begin, idx_t peer_begin, idx_t row_idx) { if (partition_begin == row_idx) { dense_rank = 1; rank = 1; @@ -33,31 +88,58 @@ void WindowPeerState::NextRank(idx_t partition_begin, idx_t peer_begin, idx_t ro } //===--------------------------------------------------------------------===// -// WindowRankExecutor +// WindowPeerExecutor //===--------------------------------------------------------------------===// -WindowRankExecutor::WindowRankExecutor(BoundWindowExpression &wexpr, ClientContext &context, +WindowPeerExecutor::WindowPeerExecutor(BoundWindowExpression &wexpr, ClientContext &context, WindowSharedExpressions &shared) : WindowExecutor(wexpr, context, shared) { + + for (const auto &order : wexpr.arg_orders) { + arg_order_idx.emplace_back(shared.RegisterSink(order.expression)); + } } -unique_ptr WindowRankExecutor::GetLocalState(const WindowExecutorGlobalState &gstate) const { - return make_uniq(gstate); +unique_ptr WindowPeerExecutor::GetGlobalState(const idx_t payload_count, + const ValidityMask &partition_mask, + const ValidityMask &order_mask) const { + return make_uniq(*this, payload_count, partition_mask, order_mask); +} + +unique_ptr WindowPeerExecutor::GetLocalState(const WindowExecutorGlobalState &gstate) const { + return make_uniq(gstate.Cast()); +} + +//===--------------------------------------------------------------------===// +// WindowRankExecutor +//===--------------------------------------------------------------------===// +WindowRankExecutor::WindowRankExecutor(BoundWindowExpression &wexpr, ClientContext &context, + WindowSharedExpressions &shared) + : WindowPeerExecutor(wexpr, context, shared) { } void WindowRankExecutor::EvaluateInternal(WindowExecutorGlobalState &gstate, WindowExecutorLocalState &lstate, DataChunk &eval_chunk, Vector &result, idx_t count, idx_t row_idx) const { - auto &lpeer = lstate.Cast(); + auto &gpeer = gstate.Cast(); + auto &lpeer = lstate.Cast(); auto partition_begin = FlatVector::GetData(lpeer.bounds.data[PARTITION_BEGIN]); - auto peer_begin = FlatVector::GetData(lpeer.bounds.data[PEER_BEGIN]); - auto rdata = FlatVector::GetData(result); + auto partition_end = FlatVector::GetData(lpeer.bounds.data[PARTITION_END]); + auto rdata = FlatVector::GetData(result); + + if (gpeer.token_tree) { + for (idx_t i = 0; i < count; ++i, ++row_idx) { + rdata[i] = gpeer.token_tree->Rank(partition_begin[i], partition_end[i], row_idx); + } + return; + } // Reset to "previous" row + auto peer_begin = FlatVector::GetData(lpeer.bounds.data[PEER_BEGIN]); lpeer.rank = (peer_begin[0] - partition_begin[0]) + 1; lpeer.rank_equal = (row_idx - peer_begin[0]); for (idx_t i = 0; i < count; ++i, ++row_idx) { lpeer.NextRank(partition_begin[i], peer_begin[i], row_idx); - rdata[i] = NumericCast(lpeer.rank); + rdata[i] = lpeer.rank; } } @@ -66,18 +148,13 @@ void WindowRankExecutor::EvaluateInternal(WindowExecutorGlobalState &gstate, Win //===--------------------------------------------------------------------===// WindowDenseRankExecutor::WindowDenseRankExecutor(BoundWindowExpression &wexpr, ClientContext &context, WindowSharedExpressions &shared) - : WindowExecutor(wexpr, context, shared) { -} - -unique_ptr -WindowDenseRankExecutor::GetLocalState(const WindowExecutorGlobalState &gstate) const { - return make_uniq(gstate); + : WindowPeerExecutor(wexpr, context, shared) { } void WindowDenseRankExecutor::EvaluateInternal(WindowExecutorGlobalState &gstate, WindowExecutorLocalState &lstate, DataChunk &eval_chunk, Vector &result, idx_t count, idx_t row_idx) const { - auto &lpeer = lstate.Cast(); + auto &lpeer = lstate.Cast(); auto &order_mask = gstate.order_mask; auto partition_begin = FlatVector::GetData(lpeer.bounds.data[PARTITION_BEGIN]); @@ -134,24 +211,30 @@ void WindowDenseRankExecutor::EvaluateInternal(WindowExecutorGlobalState &gstate //===--------------------------------------------------------------------===// WindowPercentRankExecutor::WindowPercentRankExecutor(BoundWindowExpression &wexpr, ClientContext &context, WindowSharedExpressions &shared) - : WindowExecutor(wexpr, context, shared) { -} - -unique_ptr -WindowPercentRankExecutor::GetLocalState(const WindowExecutorGlobalState &gstate) const { - return make_uniq(gstate); + : WindowPeerExecutor(wexpr, context, shared) { } void WindowPercentRankExecutor::EvaluateInternal(WindowExecutorGlobalState &gstate, WindowExecutorLocalState &lstate, DataChunk &eval_chunk, Vector &result, idx_t count, idx_t row_idx) const { - auto &lpeer = lstate.Cast(); + auto &gpeer = gstate.Cast(); + auto &lpeer = lstate.Cast(); auto partition_begin = FlatVector::GetData(lpeer.bounds.data[PARTITION_BEGIN]); auto partition_end = FlatVector::GetData(lpeer.bounds.data[PARTITION_END]); - auto peer_begin = FlatVector::GetData(lpeer.bounds.data[PEER_BEGIN]); auto rdata = FlatVector::GetData(result); + if (gpeer.token_tree) { + for (idx_t i = 0; i < count; ++i, ++row_idx) { + auto denom = static_cast(NumericCast(partition_end[i] - partition_begin[i] - 1)); + const auto rank = gpeer.token_tree->Rank(partition_begin[i], partition_end[i], row_idx); + double percent_rank = denom > 0 ? ((double)rank - 1) / denom : 0; + rdata[i] = percent_rank; + } + return; + } + // Reset to "previous" row + auto peer_begin = FlatVector::GetData(lpeer.bounds.data[PEER_BEGIN]); lpeer.rank = (peer_begin[0] - partition_begin[0]) + 1; lpeer.rank_equal = (row_idx - peer_begin[0]); diff --git a/src/duckdb/src/function/window/window_token_tree.cpp b/src/duckdb/src/function/window/window_token_tree.cpp new file mode 100644 index 00000000..b4d819be --- /dev/null +++ b/src/duckdb/src/function/window/window_token_tree.cpp @@ -0,0 +1,123 @@ +#include "duckdb/function/window/window_token_tree.hpp" + +namespace duckdb { + +class WindowTokenTreeLocalState : public WindowMergeSortTreeLocalState { +public: + explicit WindowTokenTreeLocalState(WindowTokenTree &token_tree) + : WindowMergeSortTreeLocalState(token_tree), token_tree(token_tree) { + } + //! Process sorted leaf data + void BuildLeaves() override; + + WindowTokenTree &token_tree; +}; + +void WindowTokenTreeLocalState::BuildLeaves() { + auto &global_sort = *token_tree.global_sort; + if (global_sort.sorted_blocks.empty()) { + return; + } + + // Scan the sort keys and note deltas + SBIterator curr(global_sort, ExpressionType::COMPARE_LESSTHAN); + SBIterator prev(global_sort, ExpressionType::COMPARE_LESSTHAN); + const auto &sort_layout = global_sort.sort_layout; + + const auto block_begin = token_tree.block_starts.at(build_task); + const auto block_end = token_tree.block_starts.at(build_task + 1); + auto &deltas = token_tree.deltas; + if (!block_begin) { + // First block, so set up initial delta + deltas[0] = 0; + } else { + // Move to the to end of the previous block + // so we can record the comparison result for the first row + curr.SetIndex(block_begin - 1); + prev.SetIndex(block_begin - 1); + } + + for (++curr; curr.GetIndex() < block_end; ++curr, ++prev) { + int lt = 0; + if (sort_layout.all_constant) { + lt = FastMemcmp(prev.entry_ptr, curr.entry_ptr, sort_layout.comparison_size); + } else { + lt = Comparators::CompareTuple(prev.scan, curr.scan, prev.entry_ptr, curr.entry_ptr, sort_layout, + prev.external); + } + + deltas[curr.GetIndex()] = (lt != 0); + } +} + +idx_t WindowTokenTree::MeasurePayloadBlocks() { + const auto count = WindowMergeSortTree::MeasurePayloadBlocks(); + + deltas.resize(count); + + return count; +} + +template +static void BuildTokens(WindowTokenTree &token_tree, vector &tokens) { + PayloadScanner scanner(*token_tree.global_sort); + DataChunk payload_chunk; + payload_chunk.Initialize(token_tree.context, token_tree.global_sort->payload_layout.GetTypes()); + const T *row_idx = nullptr; + idx_t i = 0; + + T token = 0; + for (auto &d : token_tree.deltas) { + if (i >= payload_chunk.size()) { + payload_chunk.Reset(); + scanner.Scan(payload_chunk); + if (!payload_chunk.size()) { + break; + } + row_idx = FlatVector::GetData(payload_chunk.data[0]); + i = 0; + } + + token += d; + tokens[row_idx[i++]] = token; + } +} + +unique_ptr WindowTokenTree::GetLocalState() { + return make_uniq(*this); +} + +void WindowTokenTree::CleanupSort() { + // Convert the deltas to tokens + if (mst64) { + BuildTokens(*this, mst64->LowestLevel()); + } else { + BuildTokens(*this, mst32->LowestLevel()); + } + + // Deallocate memory + vector empty; + deltas.swap(empty); + + WindowMergeSortTree::CleanupSort(); +} + +template +static idx_t TokenRank(const TREE &tree, const idx_t lower, const idx_t upper, const idx_t row_idx) { + idx_t rank = 1; + const auto needle = tree.LowestLevel()[row_idx]; + tree.AggregateLowerBound(lower, upper, needle, [&](idx_t level, const idx_t run_begin, const idx_t run_pos) { + rank += run_pos - run_begin; + }); + return rank; +} + +idx_t WindowTokenTree::Rank(const idx_t lower, const idx_t upper, const idx_t row_idx) const { + if (mst64) { + return TokenRank(*mst64, lower, upper, row_idx); + } else { + return TokenRank(*mst32, lower, upper, row_idx); + } +} + +} // namespace duckdb diff --git a/src/duckdb/src/function/window/window_value_function.cpp b/src/duckdb/src/function/window/window_value_function.cpp index ca506ee4..3f261845 100644 --- a/src/duckdb/src/function/window/window_value_function.cpp +++ b/src/duckdb/src/function/window/window_value_function.cpp @@ -21,8 +21,8 @@ class WindowValueGlobalState : public WindowExecutorGlobalState { : WindowExecutorGlobalState(executor, payload_count, partition_mask, order_mask), ignore_nulls(&all_valid), child_idx(executor.child_idx) { - if (!executor.sort_idx.empty()) { - inner_sort = make_uniq(executor.context, executor.wexpr.arg_orders, executor.sort_idx, + if (!executor.arg_order_idx.empty()) { + inner_sort = make_uniq(executor.context, executor.wexpr.arg_orders, executor.arg_order_idx, payload_count); } } @@ -146,7 +146,7 @@ WindowValueExecutor::WindowValueExecutor(BoundWindowExpression &wexpr, ClientCon default_idx = shared.RegisterEvaluate(wexpr.default_expr); for (const auto &order : wexpr.arg_orders) { - sort_idx.emplace_back(shared.RegisterSink(order.expression)); + arg_order_idx.emplace_back(shared.RegisterSink(order.expression)); } } diff --git a/src/duckdb/src/include/duckdb/common/insertion_order_preserving_map.hpp b/src/duckdb/src/include/duckdb/common/insertion_order_preserving_map.hpp index d1ff0867..fe694f36 100644 --- a/src/duckdb/src/include/duckdb/common/insertion_order_preserving_map.hpp +++ b/src/duckdb/src/include/duckdb/common/insertion_order_preserving_map.hpp @@ -96,23 +96,33 @@ class InsertionOrderPreservingMap { } void insert(const string &key, V &&value) { // NOLINT: match stl API + if (contains(key)) { + return; + } map.emplace_back(key, std::move(value)); map_idx[key] = map.size() - 1; } void insert(const string &key, const V &value) { // NOLINT: match stl API + if (contains(key)) { + return; + } map.emplace_back(key, value); map_idx[key] = map.size() - 1; } void insert(pair &&value) { // NOLINT: match stl API - map_idx[value.first] = map.size(); + auto &key = value.first; + if (contains(key)) { + return; + } + map_idx[key] = map.size(); map.push_back(std::move(value)); } void erase(typename VECTOR_TYPE::iterator it) { // NOLINT: match stl API auto key = it->first; - auto idx = map_idx[it->first]; + auto idx = map_idx[key]; map.erase(it); map_idx.erase(key); for (auto &kv : map_idx) { diff --git a/src/duckdb/src/include/duckdb/common/radix_partitioning.hpp b/src/duckdb/src/include/duckdb/common/radix_partitioning.hpp index 66b74ef7..5c4a0e2a 100644 --- a/src/duckdb/src/include/duckdb/common/radix_partitioning.hpp +++ b/src/duckdb/src/include/duckdb/common/radix_partitioning.hpp @@ -52,8 +52,8 @@ struct RadixPartitioning { } //! Select using a cutoff on the radix bits of the hash - static idx_t Select(Vector &hashes, const SelectionVector *sel, idx_t count, idx_t radix_bits, idx_t cutoff, - SelectionVector *true_sel, SelectionVector *false_sel); + static idx_t Select(Vector &hashes, const SelectionVector *sel, idx_t count, idx_t radix_bits, + const ValidityMask &partition_mask, SelectionVector *true_sel, SelectionVector *false_sel); }; //! RadixPartitionedColumnData is a PartitionedColumnData that partitions input based on the radix of a hash diff --git a/src/duckdb/src/include/duckdb/common/types/validity_mask.hpp b/src/duckdb/src/include/duckdb/common/types/validity_mask.hpp index 665a7111..05583cdd 100644 --- a/src/duckdb/src/include/duckdb/common/types/validity_mask.hpp +++ b/src/duckdb/src/include/duckdb/common/types/validity_mask.hpp @@ -85,6 +85,9 @@ struct TemplatedValidityMask { inline bool CheckAllValid(idx_t count) const { return CountValid(count) == count; } + inline bool CheckAllInvalid(idx_t count) const { + return CountValid(count) == 0; + } inline bool CheckAllValid(idx_t to, idx_t from) const { if (AllValid()) { diff --git a/src/duckdb/src/include/duckdb/common/vector_operations/unary_executor.hpp b/src/duckdb/src/include/duckdb/common/vector_operations/unary_executor.hpp index 38b5b624..85365122 100644 --- a/src/duckdb/src/include/duckdb/common/vector_operations/unary_executor.hpp +++ b/src/duckdb/src/include/duckdb/common/vector_operations/unary_executor.hpp @@ -241,6 +241,78 @@ struct UnaryExecutor { UnaryExecutor::GenericExecute>(input, result, count, (void *)&result); } + +private: + // Select logic copied from TernaryExecutor, but with a lambda instead of a static functor + template , bool NO_NULL, bool HAS_TRUE_SEL, + bool HAS_FALSE_SEL> + static inline idx_t SelectLoop(const INPUT_TYPE *__restrict input_data, const SelectionVector *result_sel, + const idx_t count, FUNC fun, const SelectionVector &input_sel, + ValidityMask &input_validity, SelectionVector *true_sel, + SelectionVector *false_sel) { + idx_t true_count = 0, false_count = 0; + for (idx_t i = 0; i < count; i++) { + const auto result_idx = result_sel->get_index(i); + const auto idx = input_sel.get_index(i); + const bool comparison_result = (NO_NULL || input_validity.RowIsValid(idx)) && fun(input_data[idx]); + if (HAS_TRUE_SEL) { + true_sel->set_index(true_count, result_idx); + true_count += comparison_result; + } + if (HAS_FALSE_SEL) { + false_sel->set_index(false_count, result_idx); + false_count += !comparison_result; + } + } + if (HAS_TRUE_SEL) { + return true_count; + } else { + return count - false_count; + } + } + + template , bool NO_NULL> + static inline idx_t SelectLoopSelSwitch(UnifiedVectorFormat &input_data, const SelectionVector *sel, + const idx_t count, FUNC fun, SelectionVector *true_sel, + SelectionVector *false_sel) { + if (true_sel && false_sel) { + return SelectLoop( + UnifiedVectorFormat::GetData(input_data), sel, count, fun, *input_data.sel, + input_data.validity, true_sel, false_sel); + } else if (true_sel) { + return SelectLoop( + UnifiedVectorFormat::GetData(input_data), sel, count, fun, *input_data.sel, + input_data.validity, true_sel, false_sel); + } else { + D_ASSERT(false_sel); + return SelectLoop( + UnifiedVectorFormat::GetData(input_data), sel, count, fun, *input_data.sel, + input_data.validity, true_sel, false_sel); + } + } + + template > + static inline idx_t SelectLoopSwitch(UnifiedVectorFormat &input_data, const SelectionVector *sel, const idx_t count, + FUNC fun, SelectionVector *true_sel, SelectionVector *false_sel) { + if (!input_data.validity.AllValid()) { + return SelectLoopSelSwitch(input_data, sel, count, fun, true_sel, false_sel); + } else { + return SelectLoopSelSwitch(input_data, sel, count, fun, true_sel, false_sel); + } + } + +public: + template > + static idx_t Select(Vector &input, const SelectionVector *sel, const idx_t count, FUNC fun, + SelectionVector *true_sel, SelectionVector *false_sel) { + if (!sel) { + sel = FlatVector::IncrementalSelectionVector(); + } + UnifiedVectorFormat input_data; + input.ToUnifiedFormat(count, input_data); + + return SelectLoopSwitch(input_data, sel, count, fun, true_sel, false_sel); + } }; } // namespace duckdb diff --git a/src/duckdb/src/include/duckdb/execution/join_hashtable.hpp b/src/duckdb/src/include/duckdb/execution/join_hashtable.hpp index 6f50793f..441c3ecd 100644 --- a/src/duckdb/src/include/duckdb/execution/join_hashtable.hpp +++ b/src/duckdb/src/include/duckdb/execution/join_hashtable.hpp @@ -381,14 +381,6 @@ class JoinHashTable { return radix_bits; } - idx_t GetPartitionStart() const { - return partition_start; - } - - idx_t GetPartitionEnd() const { - return partition_end; - } - //! Capacity of the pointer table given the ht count //! (minimum of 1024 to prevent collision chance for small HT's) static idx_t PointerTableCapacity(idx_t count) { @@ -409,6 +401,12 @@ class JoinHashTable { //! Sets number of radix bits according to the max ht size void SetRepartitionRadixBits(const idx_t max_ht_size, const idx_t max_partition_size, const idx_t max_partition_count); + //! Initialized "current_partitions" and "completed_partitions" + void InitializePartitionMasks(); + //! How many partitions are currently active + idx_t CurrentPartitionCount() const; + //! How many partitions are fully done + idx_t FinishedPartitionCount() const; //! Partition this HT void Repartition(JoinHashTable &global_ht); @@ -425,9 +423,10 @@ class JoinHashTable { //! The current number of radix bits used to partition idx_t radix_bits; - //! First and last partition of the current probe round - idx_t partition_start; - idx_t partition_end; + //! Bits set to 1 for currently active partitions + ValidityMask current_partitions; + //! Bits set to 1 for completed partitions + ValidityMask completed_partitions; }; } // namespace duckdb diff --git a/src/duckdb/src/include/duckdb/execution/merge_sort_tree.hpp b/src/duckdb/src/include/duckdb/execution/merge_sort_tree.hpp index 36e6b2e0..5d37f66f 100644 --- a/src/duckdb/src/include/duckdb/execution/merge_sort_tree.hpp +++ b/src/duckdb/src/include/duckdb/execution/merge_sort_tree.hpp @@ -110,6 +110,10 @@ struct MergeSortTree { return tree[0].first; } + inline const Elements &LowestLevel() const { + return tree[0].first; + } + Elements &Allocate(idx_t count); void Build(); diff --git a/src/duckdb/src/include/duckdb/function/window/window_index_tree.hpp b/src/duckdb/src/include/duckdb/function/window/window_index_tree.hpp index 7d53e166..e9f9f401 100644 --- a/src/duckdb/src/include/duckdb/function/window/window_index_tree.hpp +++ b/src/duckdb/src/include/duckdb/function/window/window_index_tree.hpp @@ -8,105 +8,35 @@ #pragma once -#include "duckdb/execution/merge_sort_tree.hpp" -#include "duckdb/planner/bound_result_modifier.hpp" - -#include "duckdb/function/window/window_aggregator.hpp" -#include "duckdb/common/sort/sort.hpp" -#include "duckdb/common/sort/partition_state.hpp" +#include "duckdb/function/window/window_merge_sort_tree.hpp" namespace duckdb { class WindowIndexTree; -class WindowIndexTreeLocalState : public WindowAggregatorState { +class WindowIndexTreeLocalState : public WindowMergeSortTreeLocalState { public: explicit WindowIndexTreeLocalState(WindowIndexTree &index_tree); - //! Add a chunk to the local sort - void SinkChunk(DataChunk &chunk, const idx_t row_idx, optional_ptr filter_sel, idx_t filtered); - //! Sort the data - void Sort(); //! Process sorted leaf data - void BuildLeaves(); + void BuildLeaves() override; //! The index tree we are building WindowIndexTree &index_tree; - //! Thread-local sorting data - optional_ptr local_sort; - //! Buffer for the sort keys - DataChunk sort_chunk; - //! Buffer for the payload data - DataChunk payload_chunk; - //! Build stage - PartitionSortStage build_stage = PartitionSortStage::INIT; - //! Build task number - idx_t build_task; - -private: - void ExecuteSortTask(); }; -class WindowIndexTree { +class WindowIndexTree : public WindowMergeSortTree { public: - using GlobalSortStatePtr = unique_ptr; - using LocalSortStatePtr = unique_ptr; - WindowIndexTree(ClientContext &context, const vector &orders, const vector &sort_idx, const idx_t count); WindowIndexTree(ClientContext &context, const BoundOrderModifier &order_bys, const vector &sort_idx, const idx_t count); - virtual ~WindowIndexTree() = default; - - unique_ptr GetLocalState(); - - //! Make a local sort for a thread - optional_ptr AddLocalSort(); + ~WindowIndexTree() override = default; - //! Sort state machine - bool TryPrepareSortStage(WindowIndexTreeLocalState &lstate); - //! Thread-safe post-sort cleanup - void CleanupSort(); - - //! Build the MST in parallel from the sorted data - void Build(); + unique_ptr GetLocalState() override; //! Find the Nth index in the set of subframes idx_t SelectNth(const SubFrames &frames, idx_t n) const; - - //! The query context - ClientContext &context; - //! Thread memory limit - const idx_t memory_per_thread; - //! The column indices for sorting - const vector sort_idx; - //! The sorted data - GlobalSortStatePtr global_sort; - //! Finalize guard - mutex lock; - //! Local sort set - vector local_sorts; - //! Finalize stage - atomic build_stage; - //! Tasks launched - idx_t total_tasks = 0; - //! Tasks launched - idx_t tasks_assigned = 0; - //! Tasks landed - atomic tasks_completed; - //! The block starts (the scanner doesn't know this) plus the total count - vector block_starts; - - // Merge sort trees for various sizes - // Smaller is probably not worth the effort. - using MergeSortTree32 = MergeSortTree; - using MergeSortTree64 = MergeSortTree; - unique_ptr mst32; - unique_ptr mst64; - -private: - //! Find the starts of all the blocks - void MeasurePayloadBlocks(); }; } // namespace duckdb diff --git a/src/duckdb/src/include/duckdb/function/window/window_merge_sort_tree.hpp b/src/duckdb/src/include/duckdb/function/window/window_merge_sort_tree.hpp new file mode 100644 index 00000000..9b9a16f1 --- /dev/null +++ b/src/duckdb/src/include/duckdb/function/window/window_merge_sort_tree.hpp @@ -0,0 +1,108 @@ +//===----------------------------------------------------------------------===// +// DuckDB +// +// duckdb/function/window/window_merge_sort_tree.hpp +// +// +//===----------------------------------------------------------------------===// + +#pragma once + +#include "duckdb/execution/merge_sort_tree.hpp" +#include "duckdb/planner/bound_result_modifier.hpp" + +#include "duckdb/function/window/window_aggregator.hpp" +#include "duckdb/common/sort/sort.hpp" +#include "duckdb/common/sort/partition_state.hpp" + +namespace duckdb { + +class WindowMergeSortTree; + +class WindowMergeSortTreeLocalState : public WindowAggregatorState { +public: + explicit WindowMergeSortTreeLocalState(WindowMergeSortTree &index_tree); + + //! Add a chunk to the local sort + void SinkChunk(DataChunk &chunk, const idx_t row_idx, optional_ptr filter_sel, idx_t filtered); + //! Sort the data + void Sort(); + //! Process sorted leaf data + virtual void BuildLeaves() = 0; + + //! The index tree we are building + WindowMergeSortTree &window_tree; + //! Thread-local sorting data + optional_ptr local_sort; + //! Buffer for the sort keys + DataChunk sort_chunk; + //! Buffer for the payload data + DataChunk payload_chunk; + //! Build stage + PartitionSortStage build_stage = PartitionSortStage::INIT; + //! Build task number + idx_t build_task; + +private: + void ExecuteSortTask(); +}; + +class WindowMergeSortTree { +public: + using GlobalSortStatePtr = unique_ptr; + using LocalSortStatePtr = unique_ptr; + + WindowMergeSortTree(ClientContext &context, const vector &orders, + const vector &sort_idx, const idx_t count); + virtual ~WindowMergeSortTree() = default; + + virtual unique_ptr GetLocalState() = 0; + + //! Make a local sort for a thread + optional_ptr AddLocalSort(); + + //! Thread-safe post-sort cleanup + virtual void CleanupSort(); + + //! Sort state machine + bool TryPrepareSortStage(WindowMergeSortTreeLocalState &lstate); + //! Build the MST in parallel from the sorted data + void Build(); + + //! The query context + ClientContext &context; + //! Thread memory limit + const idx_t memory_per_thread; + //! The column indices for sorting + const vector sort_idx; + //! The sorted data + GlobalSortStatePtr global_sort; + //! Finalize guard + mutex lock; + //! Local sort set + vector local_sorts; + //! Finalize stage + atomic build_stage; + //! Tasks launched + idx_t total_tasks = 0; + //! Tasks launched + idx_t tasks_assigned = 0; + //! Tasks landed + atomic tasks_completed; + //! The block starts (the scanner doesn't know this) plus the total count + vector block_starts; + + // Merge sort trees for various sizes + // Smaller is probably not worth the effort. + using MergeSortTree32 = MergeSortTree; + using MergeSortTree64 = MergeSortTree; + unique_ptr mst32; + unique_ptr mst64; + +protected: + //! Find the starts of all the blocks + //! Returns the total number of rows + virtual idx_t MeasurePayloadBlocks(); +}; + +} // namespace duckdb diff --git a/src/duckdb/src/include/duckdb/function/window/window_rank_function.hpp b/src/duckdb/src/include/duckdb/function/window/window_rank_function.hpp index 58376d25..4c84d1a4 100644 --- a/src/duckdb/src/include/duckdb/function/window/window_rank_function.hpp +++ b/src/duckdb/src/include/duckdb/function/window/window_rank_function.hpp @@ -12,34 +12,40 @@ namespace duckdb { -class WindowRankExecutor : public WindowExecutor { +class WindowPeerExecutor : public WindowExecutor { public: - WindowRankExecutor(BoundWindowExpression &wexpr, ClientContext &context, WindowSharedExpressions &shared); + WindowPeerExecutor(BoundWindowExpression &wexpr, ClientContext &context, WindowSharedExpressions &shared); + unique_ptr GetGlobalState(const idx_t payload_count, const ValidityMask &partition_mask, + const ValidityMask &order_mask) const override; unique_ptr GetLocalState(const WindowExecutorGlobalState &gstate) const override; + //! The column indices of any ORDER BY argument expressions + vector arg_order_idx; +}; + +class WindowRankExecutor : public WindowPeerExecutor { +public: + WindowRankExecutor(BoundWindowExpression &wexpr, ClientContext &context, WindowSharedExpressions &shared); + protected: void EvaluateInternal(WindowExecutorGlobalState &gstate, WindowExecutorLocalState &lstate, DataChunk &eval_chunk, Vector &result, idx_t count, idx_t row_idx) const override; }; -class WindowDenseRankExecutor : public WindowExecutor { +class WindowDenseRankExecutor : public WindowPeerExecutor { public: WindowDenseRankExecutor(BoundWindowExpression &wexpr, ClientContext &context, WindowSharedExpressions &shared); - unique_ptr GetLocalState(const WindowExecutorGlobalState &gstate) const override; - protected: void EvaluateInternal(WindowExecutorGlobalState &gstate, WindowExecutorLocalState &lstate, DataChunk &eval_chunk, Vector &result, idx_t count, idx_t row_idx) const override; }; -class WindowPercentRankExecutor : public WindowExecutor { +class WindowPercentRankExecutor : public WindowPeerExecutor { public: WindowPercentRankExecutor(BoundWindowExpression &wexpr, ClientContext &context, WindowSharedExpressions &shared); - unique_ptr GetLocalState(const WindowExecutorGlobalState &gstate) const override; - protected: void EvaluateInternal(WindowExecutorGlobalState &gstate, WindowExecutorLocalState &lstate, DataChunk &eval_chunk, Vector &result, idx_t count, idx_t row_idx) const override; diff --git a/src/duckdb/src/include/duckdb/function/window/window_token_tree.hpp b/src/duckdb/src/include/duckdb/function/window/window_token_tree.hpp new file mode 100644 index 00000000..8f69a41d --- /dev/null +++ b/src/duckdb/src/include/duckdb/function/window/window_token_tree.hpp @@ -0,0 +1,43 @@ +//===----------------------------------------------------------------------===// +// DuckDB +// +// duckdb/function/window/window_token_tree.hpp +// +// +//===----------------------------------------------------------------------===// + +#pragma once + +#include "duckdb/function/window/window_merge_sort_tree.hpp" + +namespace duckdb { + +// Builds a merge sort tree that uses integer tokens for the comparison values instead of the sort keys. +class WindowTokenTree : public WindowMergeSortTree { +public: + WindowTokenTree(ClientContext &context, const vector &orders, const vector &sort_idx, + const idx_t count) + : WindowMergeSortTree(context, orders, sort_idx, count) { + } + WindowTokenTree(ClientContext &context, const BoundOrderModifier &order_bys, const vector &sort_idx, + const idx_t count) + : WindowTokenTree(context, order_bys.orders, sort_idx, count) { + } + + unique_ptr GetLocalState() override; + + //! Thread-safe post-sort cleanup + void CleanupSort() override; + + //! Find the rank of the row within the range + idx_t Rank(const idx_t lower, const idx_t upper, const idx_t row_idx) const; + + //! Peer boundaries. + vector deltas; + +protected: + //! Find the starts of all the blocks + idx_t MeasurePayloadBlocks() override; +}; + +} // namespace duckdb diff --git a/src/duckdb/src/include/duckdb/function/window/window_value_function.hpp b/src/duckdb/src/include/duckdb/function/window/window_value_function.hpp index 9254b741..42d2cb19 100644 --- a/src/duckdb/src/include/duckdb/function/window/window_value_function.hpp +++ b/src/duckdb/src/include/duckdb/function/window/window_value_function.hpp @@ -32,8 +32,8 @@ class WindowValueExecutor : public WindowExecutor { column_t offset_idx = DConstants::INVALID_INDEX; //! The column index of the default value column column_t default_idx = DConstants::INVALID_INDEX; - //! Thee column indices of the inner sort expressions - vector sort_idx; + //! The column indices of the argument ORDER BY expressions + vector arg_order_idx; }; // diff --git a/src/duckdb/src/include/duckdb/main/secret/secret_storage.hpp b/src/duckdb/src/include/duckdb/main/secret/secret_storage.hpp index 91e059e3..5649411d 100644 --- a/src/duckdb/src/include/duckdb/main/secret/secret_storage.hpp +++ b/src/duckdb/src/include/duckdb/main/secret/secret_storage.hpp @@ -8,8 +8,13 @@ #pragma once +#include "duckdb/catalog/catalog.hpp" +#include "duckdb/catalog/catalog_set.hpp" #include "duckdb/common/common.hpp" +#include "duckdb/common/enums/on_create_conflict.hpp" #include "duckdb/common/enums/on_entry_not_found.hpp" +#include "duckdb/common/optional_ptr.hpp" +#include "duckdb/common/case_insensitive_map.hpp" namespace duckdb { @@ -20,15 +25,21 @@ struct CatalogTransaction; class DatabaseInstance; struct SecretMatch; struct SecretEntry; +class SecretManager; //! Base class for SecretStorage API class SecretStorage { friend class SecretManager; public: - explicit SecretStorage(const string &name) : storage_name(name), persistent(false) {}; + explicit SecretStorage(const string &name, const int64_t tie_break_offset) + : storage_name(name), tie_break_offset(tie_break_offset), persistent(false) {}; virtual ~SecretStorage() = default; + //! Default storage backend offsets + static const int64_t TEMPORARY_STORAGE_OFFSET = 10; + static const int64_t LOCAL_FILE_STORAGE_OFFSET = 20; + public: //! SecretStorage API @@ -52,9 +63,6 @@ class SecretStorage { virtual unique_ptr GetSecretByName(const string &name, optional_ptr transaction = nullptr) = 0; - //! Return the offset associated to this storage for tie-breaking secrets between storages - virtual int64_t GetTieBreakOffset() = 0; - //! Returns include_in_lookups, used to create secret storage virtual bool IncludeInLookups() { return true; @@ -67,16 +75,13 @@ class SecretStorage { protected: //! Helper function to select the best matching secret within a storage. Tie-breaks within a storage are broken //! by secret name by default. - SecretMatch SelectBestMatch(SecretEntry &secret_entry, const string &path, SecretMatch ¤t_best); - - //! Offsets the score to tie-break secrets giving preference to the storage with the lowest storage_penalty - //! the base implementation will be chosen last in a tie-break - int64_t OffsetMatchScore(int64_t score) { - return 100 * score - GetTieBreakOffset(); - } + static SecretMatch SelectBestMatch(SecretEntry &secret_entry, const string &path, int64_t offset, + SecretMatch ¤t_best); //! Name of the storage backend (e.g. temporary, file, etc) string storage_name; + //! Offset associated to this storage for tie-breaking secrets between storages + const int64_t tie_break_offset; //! Whether entries in this storage will survive duckdb reboots bool persistent; }; @@ -94,8 +99,8 @@ struct SecretCatalogEntry : public InCatalogEntry { //! Base Implementation for catalog set based secret storage class CatalogSetSecretStorage : public SecretStorage { public: - CatalogSetSecretStorage(DatabaseInstance &db_instance, const string &name_p) - : SecretStorage(name_p), db(db_instance) {}; + CatalogSetSecretStorage(DatabaseInstance &db_instance, const string &name_p, const int64_t offset) + : SecretStorage(name_p, offset), db(db_instance) {}; public: //! SecretStorage API @@ -128,15 +133,12 @@ class CatalogSetSecretStorage : public SecretStorage { class TemporarySecretStorage : public CatalogSetSecretStorage { public: - TemporarySecretStorage(const string &name_p, DatabaseInstance &db_p) : CatalogSetSecretStorage(db_p, name_p) { + TemporarySecretStorage(const string &name_p, DatabaseInstance &db_p) + : CatalogSetSecretStorage(db_p, name_p, TEMPORARY_STORAGE_OFFSET) { secrets = make_uniq(Catalog::GetSystemCatalog(db)); persistent = false; } - int64_t GetTieBreakOffset() override { - return 10; - } - protected: }; @@ -145,10 +147,6 @@ class LocalFileSecretStorage : public CatalogSetSecretStorage { LocalFileSecretStorage(SecretManager &manager, DatabaseInstance &db, const string &name_p, const string &secret_path); - int64_t GetTieBreakOffset() override { - return 20; - } - protected: //! Implements the writes to disk void WriteSecret(const BaseSecret &secret, OnCreateConflict on_conflict) override; diff --git a/src/duckdb/src/include/duckdb/optimizer/join_order/relation_statistics_helper.hpp b/src/duckdb/src/include/duckdb/optimizer/join_order/relation_statistics_helper.hpp index 4e6f04bf..8a4b7035 100644 --- a/src/duckdb/src/include/duckdb/optimizer/join_order/relation_statistics_helper.hpp +++ b/src/duckdb/src/include/duckdb/optimizer/join_order/relation_statistics_helper.hpp @@ -45,8 +45,8 @@ class RelationStatisticsHelper { static constexpr double DEFAULT_SELECTIVITY = 0.2; public: - static idx_t InspectConjunctionAND(idx_t cardinality, idx_t column_index, ConjunctionAndFilter &filter, - BaseStatistics &base_stats); + static idx_t InspectTableFilter(idx_t cardinality, idx_t column_index, TableFilter &filter, + BaseStatistics &base_stats); // static idx_t InspectConjunctionOR(idx_t cardinality, idx_t column_index, ConjunctionOrFilter &filter, // BaseStatistics &base_stats); //! Extract Statistics from a LogicalGet. diff --git a/src/duckdb/src/include/duckdb/storage/table/array_column_data.hpp b/src/duckdb/src/include/duckdb/storage/table/array_column_data.hpp index 447324ee..2a0ec1d0 100644 --- a/src/duckdb/src/include/duckdb/storage/table/array_column_data.hpp +++ b/src/duckdb/src/include/duckdb/storage/table/array_column_data.hpp @@ -1,7 +1,7 @@ //===----------------------------------------------------------------------===// // DuckDB // -// duckdb/storage/table/list_column_data.hpp +// duckdb/storage/table/array_column_data.hpp // // //===----------------------------------------------------------------------===// @@ -21,7 +21,7 @@ class ArrayColumnData : public ColumnData { //! The child-column of the list unique_ptr child_column; - //! The validity column data of the struct + //! The validity column data of the array ValidityColumnData validity; public: diff --git a/src/duckdb/src/include/duckdb/storage/table/column_data.hpp b/src/duckdb/src/include/duckdb/storage/table/column_data.hpp index 28af47d4..2adf798d 100644 --- a/src/duckdb/src/include/duckdb/storage/table/column_data.hpp +++ b/src/duckdb/src/include/duckdb/storage/table/column_data.hpp @@ -34,6 +34,8 @@ struct TableScanOptions; struct TransactionData; struct PersistentColumnData; +using column_segment_vector_t = vector>; + struct ColumnCheckpointInfo { ColumnCheckpointInfo(RowGroupWriteInfo &info, idx_t column_idx) : info(info), column_idx(column_idx) { } @@ -65,8 +67,6 @@ class ColumnData { idx_t column_index; //! The type of the column LogicalType type; - //! The parent column (if any) - optional_ptr parent; public: virtual FilterPropagateResult CheckZonemap(ColumnScanState &state, TableFilter &filter); @@ -81,6 +81,21 @@ class ColumnData { idx_t GetAllocationSize() const { return allocation_size; } + bool HasCompressionFunction() const { + return compression != nullptr; + } + const CompressionFunction &GetCompressionFunction() const { + D_ASSERT(HasCompressionFunction()); + return *compression; + } + + bool HasParent() const { + return parent != nullptr; + } + const ColumnData &Parent() const { + D_ASSERT(HasParent()); + return *parent; + } virtual void SetStart(idx_t new_start); //! The root type of the column @@ -217,6 +232,10 @@ class ColumnData { unique_ptr stats; //! Total transient allocation size idx_t allocation_size; + +private: + //! The parent column (if any) + optional_ptr parent; //! The compression function used by the ColumnData //! This is empty if the segments have mixed compression or the ColumnData is empty optional_ptr compression; diff --git a/src/duckdb/src/include/duckdb/storage/table/column_data_checkpointer.hpp b/src/duckdb/src/include/duckdb/storage/table/column_data_checkpointer.hpp index eb105e55..2bdc41dd 100644 --- a/src/duckdb/src/include/duckdb/storage/table/column_data_checkpointer.hpp +++ b/src/duckdb/src/include/duckdb/storage/table/column_data_checkpointer.hpp @@ -27,23 +27,24 @@ class ColumnDataCheckpointer { RowGroup &GetRowGroup(); ColumnCheckpointState &GetCheckpointState(); - void Checkpoint(vector> nodes); + void Checkpoint(const column_segment_vector_t &nodes); + void FinalizeCheckpoint(column_segment_vector_t &&nodes); CompressionFunction &GetCompressionFunction(CompressionType type); private: - void ScanSegments(const std::function &callback); - unique_ptr DetectBestCompressionMethod(idx_t &compression_idx); - void WriteToDisk(); - bool HasChanges(); - void WritePersistentSegments(); + void ScanSegments(const column_segment_vector_t &nodes, const std::function &callback); + unique_ptr DetectBestCompressionMethod(const column_segment_vector_t &nodes, idx_t &compression_idx); + void WriteToDisk(const column_segment_vector_t &nodes); + bool HasChanges(const column_segment_vector_t &nodes); + void WritePersistentSegments(column_segment_vector_t nodes); private: ColumnData &col_data; RowGroup &row_group; ColumnCheckpointState &state; bool is_validity; + bool has_changes; Vector intermediate; - vector> nodes; vector> compression_functions; ColumnCheckpointInfo &checkpoint_info; }; diff --git a/src/duckdb/src/include/duckdb/storage/table/list_column_data.hpp b/src/duckdb/src/include/duckdb/storage/table/list_column_data.hpp index 57b9f235..c4ec5674 100644 --- a/src/duckdb/src/include/duckdb/storage/table/list_column_data.hpp +++ b/src/duckdb/src/include/duckdb/storage/table/list_column_data.hpp @@ -21,7 +21,7 @@ class ListColumnData : public ColumnData { //! The child-column of the list unique_ptr child_column; - //! The validity column data of the struct + //! The validity column data of the list ValidityColumnData validity; public: diff --git a/src/duckdb/src/include/duckdb/storage/table/segment_tree.hpp b/src/duckdb/src/include/duckdb/storage/table/segment_tree.hpp index c666de06..1a461ac3 100644 --- a/src/duckdb/src/include/duckdb/storage/table/segment_tree.hpp +++ b/src/duckdb/src/include/duckdb/storage/table/segment_tree.hpp @@ -67,6 +67,16 @@ class SegmentTree { auto l = Lock(); return MoveSegments(l); } + + const vector> &ReferenceSegments(SegmentLock &l) { + LoadAllSegments(l); + return nodes; + } + const vector> &ReferenceSegments() { + auto l = Lock(); + return ReferenceSegments(l); + } + idx_t GetSegmentCount() { auto l = Lock(); return GetSegmentCount(l); diff --git a/src/duckdb/src/main/secret/secret_manager.cpp b/src/duckdb/src/main/secret/secret_manager.cpp index 045d1efe..191cf1f5 100644 --- a/src/duckdb/src/main/secret/secret_manager.cpp +++ b/src/duckdb/src/main/secret/secret_manager.cpp @@ -80,7 +80,7 @@ void SecretManager::LoadSecretStorageInternal(unique_ptr storage) // Check for tie-break offset collisions to ensure we can always tie-break cleanly for (const auto &storage_ptr : secret_storages) { - if (storage_ptr.second->GetTieBreakOffset() == storage->GetTieBreakOffset()) { + if (storage_ptr.second->tie_break_offset == storage->tie_break_offset) { throw InternalException("Failed to load secret storage '%s', tie break score collides with '%s'", storage->GetName(), storage_ptr.second->GetName()); } diff --git a/src/duckdb/src/main/secret/secret_storage.cpp b/src/duckdb/src/main/secret/secret_storage.cpp index ef35f419..0b543f8b 100644 --- a/src/duckdb/src/main/secret/secret_storage.cpp +++ b/src/duckdb/src/main/secret/secret_storage.cpp @@ -14,7 +14,8 @@ namespace duckdb { -SecretMatch SecretStorage::SelectBestMatch(SecretEntry &secret_entry, const string &path, SecretMatch ¤t_best) { +SecretMatch SecretStorage::SelectBestMatch(SecretEntry &secret_entry, const string &path, int64_t offset, + SecretMatch ¤t_best) { // Get secret match score auto match_score = secret_entry.secret->MatchScore(path); @@ -27,7 +28,7 @@ SecretMatch SecretStorage::SelectBestMatch(SecretEntry &secret_entry, const stri D_ASSERT(match_score >= 0); // Apply storage tie-break offset - match_score = OffsetMatchScore(match_score); + match_score = 100 * match_score - offset; // Choose the best matching score, tie-breaking on secret name when necessary if (match_score > current_best.score) { @@ -105,7 +106,7 @@ SecretMatch CatalogSetSecretStorage::LookupSecret(const string &path, const stri const std::function callback = [&](CatalogEntry &entry) { auto &cast_entry = entry.Cast(); if (StringUtil::CIEquals(cast_entry.secret->secret->GetType(), type)) { - best_match = SelectBestMatch(*cast_entry.secret, path, best_match); + best_match = SelectBestMatch(*cast_entry.secret, path, tie_break_offset, best_match); } }; secrets->Scan(GetTransactionOrDefault(transaction), callback); @@ -131,7 +132,8 @@ unique_ptr CatalogSetSecretStorage::GetSecretByName(const string &n LocalFileSecretStorage::LocalFileSecretStorage(SecretManager &manager, DatabaseInstance &db_p, const string &name_p, const string &secret_path_p) - : CatalogSetSecretStorage(db_p, name_p), secret_path(FileSystem::ExpandPath(secret_path_p, nullptr)) { + : CatalogSetSecretStorage(db_p, name_p, LOCAL_FILE_STORAGE_OFFSET), + secret_path(FileSystem::ExpandPath(secret_path_p, nullptr)) { persistent = true; // Check existence of persistent secret dir diff --git a/src/duckdb/src/optimizer/join_order/relation_statistics_helper.cpp b/src/duckdb/src/optimizer/join_order/relation_statistics_helper.cpp index 880df760..6340d9c0 100644 --- a/src/duckdb/src/optimizer/join_order/relation_statistics_helper.cpp +++ b/src/duckdb/src/optimizer/join_order/relation_statistics_helper.cpp @@ -113,11 +113,10 @@ RelationStats RelationStatisticsHelper::ExtractGetStats(LogicalGet &get, ClientC column_statistics = get.function.statistics(context, get.bind_data.get(), it.first); } - if (column_statistics && it.second->filter_type == TableFilterType::CONJUNCTION_AND) { - auto &filter = it.second->Cast(); - idx_t cardinality_with_and_filter = RelationStatisticsHelper::InspectConjunctionAND( - base_table_cardinality, it.first, filter, *column_statistics); - cardinality_after_filters = MinValue(cardinality_after_filters, cardinality_with_and_filter); + if (column_statistics) { + idx_t cardinality_with_filter = + InspectTableFilter(base_table_cardinality, it.first, *it.second, *column_statistics); + cardinality_after_filters = MinValue(cardinality_after_filters, cardinality_with_filter); } if (it.second->filter_type != TableFilterType::OPTIONAL_FILTER) { @@ -379,16 +378,22 @@ RelationStats RelationStatisticsHelper::ExtractEmptyResultStats(LogicalEmptyResu return stats; } -idx_t RelationStatisticsHelper::InspectConjunctionAND(idx_t cardinality, idx_t column_index, - ConjunctionAndFilter &filter, BaseStatistics &base_stats) { +idx_t RelationStatisticsHelper::InspectTableFilter(idx_t cardinality, idx_t column_index, TableFilter &filter, + BaseStatistics &base_stats) { auto cardinality_after_filters = cardinality; - for (auto &child_filter : filter.child_filters) { - if (child_filter->filter_type != TableFilterType::CONSTANT_COMPARISON) { - continue; + switch (filter.filter_type) { + case TableFilterType::CONJUNCTION_AND: { + auto &and_filter = filter.Cast(); + for (auto &child_filter : and_filter.child_filters) { + cardinality_after_filters = MinValue( + cardinality_after_filters, InspectTableFilter(cardinality, column_index, *child_filter, base_stats)); } - auto &comparison_filter = child_filter->Cast(); + return cardinality_after_filters; + } + case TableFilterType::CONSTANT_COMPARISON: { + auto &comparison_filter = filter.Cast(); if (comparison_filter.comparison_type != ExpressionType::COMPARE_EQUAL) { - continue; + return cardinality_after_filters; } auto column_count = base_stats.GetDistinctCount(); // column_count = 0 when there is no column count (i.e parquet scans) @@ -396,8 +401,11 @@ idx_t RelationStatisticsHelper::InspectConjunctionAND(idx_t cardinality, idx_t c // we want the ceil of cardinality/column_count. We also want to avoid compiler errors cardinality_after_filters = (cardinality + column_count - 1) / column_count; } + return cardinality_after_filters; + } + default: + return cardinality_after_filters; } - return cardinality_after_filters; } // TODO: Currently only simple AND filters are pushed into table scans. diff --git a/src/duckdb/src/parser/transform/expression/transform_function.cpp b/src/duckdb/src/parser/transform/expression/transform_function.cpp index 951f1df6..d9a52ce1 100644 --- a/src/duckdb/src/parser/transform/expression/transform_function.cpp +++ b/src/duckdb/src/parser/transform/expression/transform_function.cpp @@ -115,14 +115,14 @@ static bool IsOrderableWindowFunction(ExpressionType type) { case ExpressionType::WINDOW_FIRST_VALUE: case ExpressionType::WINDOW_LAST_VALUE: case ExpressionType::WINDOW_NTH_VALUE: + case ExpressionType::WINDOW_RANK: + case ExpressionType::WINDOW_PERCENT_RANK: return true; case ExpressionType::WINDOW_LEAD: case ExpressionType::WINDOW_LAG: case ExpressionType::WINDOW_AGGREGATE: case ExpressionType::WINDOW_ROW_NUMBER: - case ExpressionType::WINDOW_RANK: case ExpressionType::WINDOW_RANK_DENSE: - case ExpressionType::WINDOW_PERCENT_RANK: case ExpressionType::WINDOW_CUME_DIST: case ExpressionType::WINDOW_NTILE: return false; diff --git a/src/duckdb/src/storage/table/column_data.cpp b/src/duckdb/src/storage/table/column_data.cpp index 7db0c535..ac4d8946 100644 --- a/src/duckdb/src/storage/table/column_data.cpp +++ b/src/duckdb/src/storage/table/column_data.cpp @@ -24,7 +24,7 @@ namespace duckdb { ColumnData::ColumnData(BlockManager &block_manager, DataTableInfo &info, idx_t column_index, idx_t start_row, LogicalType type_p, optional_ptr parent) : start(start_row), count(0), block_manager(block_manager), info(info), column_index(column_index), - type(std::move(type_p)), parent(parent), allocation_size(0) { + type(std::move(type_p)), allocation_size(0), parent(parent) { if (!parent) { stats = make_uniq(type); } @@ -621,14 +621,15 @@ unique_ptr ColumnData::Checkpoint(RowGroup &row_group, Co checkpoint_state->global_stats = BaseStatistics::CreateEmpty(type).ToUnique(); auto l = data.Lock(); - auto nodes = data.MoveSegments(l); + auto &nodes = data.ReferenceSegments(l); if (nodes.empty()) { // empty table: flush the empty list return checkpoint_state; } ColumnDataCheckpointer checkpointer(*this, row_group, *checkpoint_state, checkpoint_info); - checkpointer.Checkpoint(std::move(nodes)); + checkpointer.Checkpoint(nodes); + checkpointer.FinalizeCheckpoint(data.MoveSegments(l)); // reset the compression function compression = nullptr; diff --git a/src/duckdb/src/storage/table/column_data_checkpointer.cpp b/src/duckdb/src/storage/table/column_data_checkpointer.cpp index fec8b354..2a7f0e95 100644 --- a/src/duckdb/src/storage/table/column_data_checkpointer.cpp +++ b/src/duckdb/src/storage/table/column_data_checkpointer.cpp @@ -41,7 +41,8 @@ ColumnCheckpointState &ColumnDataCheckpointer::GetCheckpointState() { return state; } -void ColumnDataCheckpointer::ScanSegments(const std::function &callback) { +void ColumnDataCheckpointer::ScanSegments(const column_segment_vector_t &nodes, + const std::function &callback) { Vector scan_vector(intermediate.GetType(), nullptr); for (idx_t segment_idx = 0; segment_idx < nodes.size(); segment_idx++) { auto &segment = *nodes[segment_idx].node; @@ -96,7 +97,8 @@ CompressionType ForceCompression(vector> &comp return found ? compression_type : CompressionType::COMPRESSION_AUTO; } -unique_ptr ColumnDataCheckpointer::DetectBestCompressionMethod(idx_t &compression_idx) { +unique_ptr ColumnDataCheckpointer::DetectBestCompressionMethod(const column_segment_vector_t &nodes, + idx_t &compression_idx) { D_ASSERT(!compression_functions.empty()); auto &config = DBConfig::GetConfig(GetDatabase()); CompressionType forced_method = CompressionType::COMPRESSION_AUTO; @@ -121,7 +123,7 @@ unique_ptr ColumnDataCheckpointer::DetectBestCompressionMethod(idx } // scan over all the segments and run the analyze step - ScanSegments([&](Vector &scan_vector, idx_t count) { + ScanSegments(nodes, [&](Vector &scan_vector, idx_t count) { for (idx_t i = 0; i < compression_functions.size(); i++) { if (!compression_functions[i]) { continue; @@ -173,7 +175,7 @@ unique_ptr ColumnDataCheckpointer::DetectBestCompressionMethod(idx return state; } -void ColumnDataCheckpointer::WriteToDisk() { +void ColumnDataCheckpointer::WriteToDisk(const column_segment_vector_t &nodes) { // there were changes or transient segments // we need to rewrite the column segments to disk @@ -188,7 +190,7 @@ void ColumnDataCheckpointer::WriteToDisk() { // now we need to write our segment // we will first run an analyze step that determines which compression function to use idx_t compression_idx; - auto analyze_state = DetectBestCompressionMethod(compression_idx); + auto analyze_state = DetectBestCompressionMethod(nodes, compression_idx); if (!analyze_state) { throw FatalException("No suitable compression/storage method found to store column"); @@ -199,13 +201,11 @@ void ColumnDataCheckpointer::WriteToDisk() { auto compress_state = best_function->init_compression(*this, std::move(analyze_state)); ScanSegments( - [&](Vector &scan_vector, idx_t count) { best_function->compress(*compress_state, scan_vector, count); }); + nodes, [&](Vector &scan_vector, idx_t count) { best_function->compress(*compress_state, scan_vector, count); }); best_function->compress_finalize(*compress_state); - - nodes.clear(); } -bool ColumnDataCheckpointer::HasChanges() { +bool ColumnDataCheckpointer::HasChanges(const column_segment_vector_t &nodes) { for (idx_t segment_idx = 0; segment_idx < nodes.size(); segment_idx++) { auto segment = nodes[segment_idx].node.get(); if (segment->segment_type == ColumnSegmentType::TRANSIENT) { @@ -223,7 +223,7 @@ bool ColumnDataCheckpointer::HasChanges() { return false; } -void ColumnDataCheckpointer::WritePersistentSegments() { +void ColumnDataCheckpointer::WritePersistentSegments(column_segment_vector_t nodes) { // all segments are persistent and there are no updates // we only need to write the metadata for (idx_t segment_idx = 0; segment_idx < nodes.size(); segment_idx++) { @@ -240,16 +240,20 @@ void ColumnDataCheckpointer::WritePersistentSegments() { } } -void ColumnDataCheckpointer::Checkpoint(vector> nodes_p) { - D_ASSERT(!nodes_p.empty()); - this->nodes = std::move(nodes_p); +void ColumnDataCheckpointer::Checkpoint(const column_segment_vector_t &nodes) { + D_ASSERT(!nodes.empty()); + has_changes = HasChanges(nodes); // first check if any of the segments have changes - if (!HasChanges()) { - // no changes: only need to write the metadata for this column - WritePersistentSegments(); + if (has_changes) { + WriteToDisk(nodes); + } +} + +void ColumnDataCheckpointer::FinalizeCheckpoint(column_segment_vector_t &&nodes) { + if (has_changes) { + nodes.clear(); } else { - // there are changes: rewrite the set of columns); - WriteToDisk(); + WritePersistentSegments(std::move(nodes)); } } diff --git a/src/duckdb/src/storage/table/standard_column_data.cpp b/src/duckdb/src/storage/table/standard_column_data.cpp index 671d3a65..d09f0904 100644 --- a/src/duckdb/src/storage/table/standard_column_data.cpp +++ b/src/duckdb/src/storage/table/standard_column_data.cpp @@ -7,6 +7,7 @@ #include "duckdb/storage/table/column_checkpoint_state.hpp" #include "duckdb/common/serializer/serializer.hpp" #include "duckdb/common/serializer/deserializer.hpp" +#include "duckdb/storage/table/column_data_checkpointer.hpp" namespace duckdb { @@ -82,13 +83,13 @@ void StandardColumnData::Filter(TransactionData transaction, idx_t vector_index, SelectionVector &sel, idx_t &count, const TableFilter &filter) { // check if we can do a specialized select // the compression functions need to support this - bool has_select = compression && compression->filter; - bool validity_has_select = validity.compression && validity.compression->filter; + bool has_filter = HasCompressionFunction() && GetCompressionFunction().filter; + bool validity_has_filter = validity.HasCompressionFunction() && validity.GetCompressionFunction().filter; auto target_count = GetVectorCount(vector_index); auto scan_type = GetVectorScanType(state, target_count, result); bool scan_entire_vector = scan_type == ScanVectorType::SCAN_ENTIRE_VECTOR; bool verify_fetch_row = state.scan_options && state.scan_options->force_fetch_row; - if (!has_select || !validity_has_select || !scan_entire_vector || verify_fetch_row) { + if (!has_filter || !validity_has_filter || !scan_entire_vector || verify_fetch_row) { // we are not scanning an entire vector - this can have several causes (updates, etc) ColumnData::Filter(transaction, vector_index, state, result, sel, count, filter); return; @@ -101,8 +102,8 @@ void StandardColumnData::Select(TransactionData transaction, idx_t vector_index, SelectionVector &sel, idx_t sel_count) { // check if we can do a specialized select // the compression functions need to support this - bool has_select = compression && compression->select; - bool validity_has_select = validity.compression && validity.compression->select; + bool has_select = HasCompressionFunction() && GetCompressionFunction().select; + bool validity_has_select = validity.HasCompressionFunction() && validity.GetCompressionFunction().select; auto target_count = GetVectorCount(vector_index); auto scan_type = GetVectorScanType(state, target_count, result); bool scan_entire_vector = scan_type == ScanVectorType::SCAN_ENTIRE_VECTOR; diff --git a/src/duckdb/src/transaction/wal_write_state.cpp b/src/duckdb/src/transaction/wal_write_state.cpp index 8bb1702a..275a1257 100644 --- a/src/duckdb/src/transaction/wal_write_state.cpp +++ b/src/duckdb/src/transaction/wal_write_state.cpp @@ -236,10 +236,10 @@ void WALWriteState::WriteUpdate(UpdateInfo &info) { // construct the column index path vector column_indexes; - reference current_column_data = column_data; - while (current_column_data.get().parent) { + reference current_column_data = column_data; + while (current_column_data.get().HasParent()) { column_indexes.push_back(current_column_data.get().column_index); - current_column_data = *current_column_data.get().parent; + current_column_data = current_column_data.get().Parent(); } column_indexes.push_back(info.column_index); std::reverse(column_indexes.begin(), column_indexes.end()); diff --git a/src/duckdb/third_party/libpg_query/src_backend_parser_gram.cpp b/src/duckdb/third_party/libpg_query/src_backend_parser_gram.cpp index 598fd18d..f00474b3 100644 --- a/src/duckdb/third_party/libpg_query/src_backend_parser_gram.cpp +++ b/src/duckdb/third_party/libpg_query/src_backend_parser_gram.cpp @@ -1626,16 +1626,16 @@ union yyalloc /* YYFINAL -- State number of the termination state. */ #define YYFINAL 874 /* YYLAST -- Last index in YYTABLE. */ -#define YYLAST 74581 +#define YYLAST 74594 /* YYNTOKENS -- Number of terminals. */ #define YYNTOKENS 529 /* YYNNTS -- Number of nonterminals. */ #define YYNNTS 483 /* YYNRULES -- Number of rules. */ -#define YYNRULES 2175 +#define YYNRULES 2176 /* YYNRULES -- Number of states. */ -#define YYNSTATES 3614 +#define YYNSTATES 3616 /* YYTRANSLATE(YYLEX) -- Bison symbol number corresponding to YYLEX. */ #define YYUNDEFTOK 2 @@ -1836,119 +1836,119 @@ static const yytype_uint16 yyprhs[] = 3548, 3555, 3563, 3565, 3568, 3570, 3572, 3574, 3577, 3580, 3585, 3589, 3591, 3593, 3595, 3597, 3600, 3602, 3604, 3606, 3608, 3610, 3612, 3614, 3617, 3622, 3625, 3629, 3633, 3638, - 3642, 3649, 3657, 3667, 3675, 3683, 3689, 3691, 3693, 3695, - 3701, 3708, 3715, 3720, 3725, 3730, 3735, 3742, 3748, 3754, - 3760, 3765, 3772, 3777, 3779, 3787, 3797, 3803, 3804, 3810, - 3815, 3816, 3818, 3819, 3822, 3823, 3825, 3829, 3833, 3836, - 3839, 3840, 3847, 3849, 3850, 3854, 3855, 3859, 3863, 3867, - 3868, 3870, 3875, 3878, 3881, 3884, 3887, 3890, 3894, 3897, - 3900, 3904, 3905, 3910, 3914, 3916, 3922, 3926, 3928, 3932, - 3934, 3937, 3941, 3943, 3947, 3949, 3952, 3954, 3955, 3957, - 3959, 3961, 3963, 3965, 3967, 3969, 3971, 3973, 3975, 3977, - 3979, 3981, 3983, 3985, 3987, 3989, 3991, 3993, 3995, 4000, - 4002, 4007, 4009, 4014, 4016, 4019, 4021, 4024, 4026, 4029, - 4031, 4035, 4037, 4041, 4043, 4046, 4048, 4052, 4054, 4057, - 4059, 4060, 4062, 4066, 4068, 4072, 4076, 4078, 4082, 4086, - 4087, 4089, 4091, 4093, 4095, 4097, 4099, 4101, 4103, 4105, - 4107, 4109, 4111, 4113, 4115, 4117, 4122, 4126, 4129, 4133, - 4134, 4138, 4142, 4145, 4148, 4150, 4151, 4154, 4157, 4161, - 4164, 4166, 4168, 4172, 4174, 4176, 4182, 4184, 4187, 4192, - 4195, 4196, 4198, 4199, 4201, 4205, 4207, 4209, 4212, 4216, - 4222, 4230, 4238, 4240, 4241, 4242, 4245, 4246, 4249, 4253, - 4257, 4261, 4267, 4275, 4283, 4284, 4287, 4289, 4290, 4292, - 4293, 4295, 4299, 4301, 4304, 4308, 4311, 4313, 4317, 4322, - 4325, 4327, 4331, 4333, 4337, 4339, 4342, 4344, 4345, 4349, - 4351, 4355, 4357, 4360, 4365, 4368, 4369, 4373, 4375, 4379, - 4381, 4384, 4389, 4392, 4393, 4395, 4399, 4401, 4405, 4407, - 4410, 4412, 4416, 4418, 4420, 4423, 4425, 4427, 4430, 4432, - 4434, 4437, 4445, 4448, 4454, 4458, 4462, 4464, 4466, 4468, - 4470, 4472, 4474, 4476, 4478, 4480, 4482, 4484, 4486, 4488, - 4490, 4493, 4496, 4500, 4504, 4505, 4507, 4509, 4511, 4517, - 4521, 4522, 4524, 4526, 4528, 4530, 4532, 4534, 4539, 4547, - 4554, 4557, 4558, 4560, 4562, 4564, 4566, 4580, 4597, 4599, - 4602, 4603, 4605, 4606, 4608, 4609, 4612, 4613, 4615, 4616, - 4623, 4632, 4639, 4648, 4655, 4664, 4668, 4671, 4673, 4674, - 4681, 4688, 4690, 4692, 4694, 4696, 4698, 4700, 4703, 4705, - 4707, 4709, 4711, 4713, 4718, 4725, 4729, 4732, 4737, 4741, - 4747, 4749, 4750, 4752, 4754, 4755, 4757, 4759, 4761, 4763, - 4765, 4767, 4769, 4771, 4773, 4775, 4777, 4779, 4781, 4783, - 4785, 4787, 4789, 4791, 4793, 4795, 4797, 4799, 4801, 4803, - 4805, 4807, 4809, 4811, 4813, 4815, 4817, 4819, 4821, 4823, - 4825, 4827, 4829, 4833, 4835, 4837, 4839, 4841, 4843, 4845, - 4848, 4850, 4852, 4855, 4859, 4863, 4867, 4871, 4873, 4877, - 4881, 4884, 4888, 4892, 4894, 4896, 4898, 4902, 4908, 4910, - 4912, 4914, 4916, 4920, 4923, 4928, 4935, 4942, 4943, 4945, - 4947, 4949, 4950, 4953, 4956, 4961, 4968, 4974, 4979, 4986, - 4988, 4990, 4992, 4994, 4996, 4998, 4999, 5001, 5005, 5007, - 5008, 5016, 5020, 5022, 5025, 5029, 5032, 5033, 5036, 5037, - 5040, 5045, 5051, 5060, 5063, 5067, 5073, 5075, 5076, 5079, - 5080, 5083, 5087, 5091, 5095, 5099, 5101, 5103, 5105, 5108, - 5112, 5115, 5118, 5121, 5124, 5128, 5133, 5137, 5139, 5141, - 5143, 5145, 5147, 5149, 5150, 5152, 5156, 5159, 5169, 5182, - 5194, 5207, 5222, 5226, 5231, 5236, 5237, 5245, 5256, 5266, - 5269, 5273, 5274, 5279, 5281, 5283, 5285, 5287, 5289, 5291, - 5293, 5295, 5297, 5299, 5301, 5303, 5305, 5307, 5309, 5311, - 5313, 5315, 5317, 5319, 5321, 5323, 5325, 5327, 5329, 5331, - 5333, 5335, 5337, 5339, 5341, 5343, 5345, 5347, 5349, 5351, - 5353, 5355, 5357, 5359, 5361, 5363, 5365, 5367, 5369, 5371, - 5373, 5375, 5377, 5379, 5381, 5383, 5385, 5387, 5389, 5391, - 5393, 5395, 5397, 5399, 5401, 5403, 5405, 5407, 5409, 5411, - 5413, 5415, 5417, 5419, 5421, 5423, 5425, 5427, 5429, 5431, - 5433, 5435, 5437, 5439, 5441, 5443, 5445, 5447, 5449, 5451, - 5453, 5455, 5457, 5459, 5461, 5463, 5465, 5467, 5469, 5471, - 5473, 5475, 5477, 5479, 5481, 5483, 5485, 5487, 5489, 5491, - 5493, 5495, 5497, 5499, 5501, 5503, 5505, 5507, 5509, 5511, - 5513, 5515, 5517, 5519, 5521, 5523, 5525, 5527, 5529, 5531, - 5533, 5535, 5537, 5539, 5541, 5543, 5545, 5547, 5549, 5551, - 5553, 5555, 5557, 5559, 5561, 5563, 5565, 5567, 5569, 5571, - 5573, 5575, 5577, 5579, 5581, 5583, 5585, 5587, 5589, 5591, - 5593, 5595, 5597, 5599, 5601, 5603, 5605, 5607, 5609, 5611, - 5613, 5615, 5617, 5619, 5621, 5623, 5625, 5627, 5629, 5631, - 5633, 5635, 5637, 5639, 5641, 5643, 5645, 5647, 5649, 5651, - 5653, 5655, 5657, 5659, 5661, 5663, 5665, 5667, 5669, 5671, - 5673, 5675, 5677, 5679, 5681, 5683, 5685, 5687, 5689, 5691, - 5693, 5695, 5697, 5699, 5701, 5703, 5705, 5707, 5709, 5711, - 5713, 5715, 5717, 5719, 5721, 5723, 5725, 5727, 5729, 5731, - 5733, 5735, 5737, 5739, 5741, 5743, 5745, 5747, 5749, 5751, - 5753, 5755, 5757, 5759, 5761, 5763, 5765, 5767, 5769, 5771, - 5773, 5775, 5777, 5779, 5781, 5783, 5785, 5787, 5789, 5791, - 5793, 5795, 5797, 5799, 5801, 5803, 5805, 5807, 5809, 5811, - 5813, 5815, 5817, 5819, 5821, 5823, 5825, 5827, 5829, 5831, - 5833, 5835, 5837, 5839, 5841, 5843, 5845, 5847, 5849, 5851, - 5853, 5855, 5857, 5859, 5861, 5863, 5865, 5867, 5869, 5871, - 5873, 5875, 5877, 5879, 5881, 5883, 5885, 5887, 5889, 5891, - 5893, 5895, 5897, 5899, 5901, 5903, 5905, 5907, 5909, 5911, - 5913, 5915, 5917, 5919, 5921, 5923, 5925, 5927, 5929, 5931, - 5933, 5935, 5937, 5939, 5941, 5943, 5945, 5947, 5949, 5951, - 5953, 5955, 5957, 5959, 5961, 5963, 5965, 5967, 5969, 5971, - 5973, 5975, 5977, 5979, 5981, 5983, 5985, 5987, 5989, 5991, - 5993, 5995, 5997, 5999, 6001, 6003, 6005, 6007, 6009, 6011, - 6013, 6015, 6017, 6019, 6021, 6023, 6025, 6027, 6029, 6031, - 6033, 6035, 6037, 6039, 6041, 6043, 6045, 6047, 6049, 6051, - 6053, 6055, 6057, 6059, 6061, 6063, 6065, 6067, 6069, 6071, - 6073, 6075, 6077, 6079, 6081, 6083, 6085, 6087, 6089, 6091, - 6093, 6095, 6097, 6099, 6101, 6103, 6105, 6107, 6109, 6111, - 6113, 6115, 6117, 6119, 6121, 6123, 6125, 6127, 6129, 6131, - 6133, 6135, 6137, 6139, 6141, 6143, 6145, 6147, 6149, 6151, - 6153, 6155, 6157, 6159, 6161, 6163, 6165, 6167, 6169, 6171, - 6173, 6175, 6177, 6179, 6181, 6183, 6185, 6187, 6189, 6191, - 6193, 6195, 6197, 6199, 6201, 6203, 6205, 6207, 6209, 6211, - 6213, 6215, 6217, 6219, 6221, 6223, 6225, 6227, 6229, 6231, - 6233, 6235, 6237, 6239, 6241, 6243, 6245, 6247, 6249, 6251, - 6253, 6255, 6257, 6259, 6261, 6263, 6265, 6267, 6269, 6271, - 6273, 6275, 6277, 6279, 6281, 6283, 6285, 6287, 6289, 6291, - 6293, 6295, 6297, 6299, 6301, 6303, 6305, 6307, 6309, 6311, - 6313, 6315, 6317, 6319, 6321, 6323, 6325, 6327, 6329, 6331, - 6333, 6335, 6337, 6339, 6341, 6343, 6345, 6347, 6349, 6351, - 6353, 6355, 6357, 6359, 6361, 6363, 6365, 6367, 6369, 6371, - 6373, 6375, 6377, 6379, 6381, 6383, 6385, 6387, 6389, 6391, - 6393, 6395, 6397, 6399, 6401, 6403, 6405, 6407, 6409, 6411, - 6413, 6415, 6417, 6419, 6421, 6423, 6425, 6427, 6429, 6431, - 6433, 6435, 6437, 6439, 6441, 6443, 6445, 6447, 6449, 6451, - 6453, 6455, 6457, 6459, 6461, 6463, 6465, 6467, 6469, 6471, - 6473, 6475, 6477, 6479, 6481, 6483, 6485, 6487, 6489, 6491, - 6493, 6495, 6497, 6499, 6501, 6503, 6505, 6507, 6509, 6511, - 6513, 6515, 6517, 6519, 6521, 6523 + 3642, 3647, 3654, 3662, 3672, 3680, 3688, 3694, 3696, 3698, + 3700, 3706, 3713, 3720, 3725, 3730, 3735, 3740, 3747, 3753, + 3759, 3765, 3770, 3777, 3782, 3784, 3792, 3802, 3808, 3809, + 3815, 3820, 3821, 3823, 3824, 3827, 3828, 3830, 3834, 3838, + 3841, 3844, 3845, 3852, 3854, 3855, 3859, 3860, 3864, 3868, + 3872, 3873, 3875, 3880, 3883, 3886, 3889, 3892, 3895, 3899, + 3902, 3905, 3909, 3910, 3915, 3919, 3921, 3927, 3931, 3933, + 3937, 3939, 3942, 3946, 3948, 3952, 3954, 3957, 3959, 3960, + 3962, 3964, 3966, 3968, 3970, 3972, 3974, 3976, 3978, 3980, + 3982, 3984, 3986, 3988, 3990, 3992, 3994, 3996, 3998, 4000, + 4005, 4007, 4012, 4014, 4019, 4021, 4024, 4026, 4029, 4031, + 4034, 4036, 4040, 4042, 4046, 4048, 4051, 4053, 4057, 4059, + 4062, 4064, 4065, 4067, 4071, 4073, 4077, 4081, 4083, 4087, + 4091, 4092, 4094, 4096, 4098, 4100, 4102, 4104, 4106, 4108, + 4110, 4112, 4114, 4116, 4118, 4120, 4122, 4127, 4131, 4134, + 4138, 4139, 4143, 4147, 4150, 4153, 4155, 4156, 4159, 4162, + 4166, 4169, 4171, 4173, 4177, 4179, 4181, 4187, 4189, 4192, + 4197, 4200, 4201, 4203, 4204, 4206, 4210, 4212, 4214, 4217, + 4221, 4227, 4235, 4243, 4245, 4246, 4247, 4250, 4251, 4254, + 4258, 4262, 4266, 4272, 4280, 4288, 4289, 4292, 4294, 4295, + 4297, 4298, 4300, 4304, 4306, 4309, 4313, 4316, 4318, 4322, + 4327, 4330, 4332, 4336, 4338, 4342, 4344, 4347, 4349, 4350, + 4354, 4356, 4360, 4362, 4365, 4370, 4373, 4374, 4378, 4380, + 4384, 4386, 4389, 4394, 4397, 4398, 4400, 4404, 4406, 4410, + 4412, 4415, 4417, 4421, 4423, 4425, 4428, 4430, 4432, 4435, + 4437, 4439, 4442, 4450, 4453, 4459, 4463, 4467, 4469, 4471, + 4473, 4475, 4477, 4479, 4481, 4483, 4485, 4487, 4489, 4491, + 4493, 4495, 4498, 4501, 4505, 4509, 4510, 4512, 4514, 4516, + 4522, 4526, 4527, 4529, 4531, 4533, 4535, 4537, 4539, 4544, + 4552, 4559, 4562, 4563, 4565, 4567, 4569, 4571, 4585, 4602, + 4604, 4607, 4608, 4610, 4611, 4613, 4614, 4617, 4618, 4620, + 4621, 4628, 4637, 4644, 4653, 4660, 4669, 4673, 4676, 4678, + 4679, 4686, 4693, 4695, 4697, 4699, 4701, 4703, 4705, 4708, + 4710, 4712, 4714, 4716, 4718, 4723, 4730, 4734, 4737, 4742, + 4746, 4752, 4754, 4755, 4757, 4759, 4760, 4762, 4764, 4766, + 4768, 4770, 4772, 4774, 4776, 4778, 4780, 4782, 4784, 4786, + 4788, 4790, 4792, 4794, 4796, 4798, 4800, 4802, 4804, 4806, + 4808, 4810, 4812, 4814, 4816, 4818, 4820, 4822, 4824, 4826, + 4828, 4830, 4832, 4834, 4838, 4840, 4842, 4844, 4846, 4848, + 4850, 4853, 4855, 4857, 4860, 4864, 4868, 4872, 4876, 4878, + 4882, 4886, 4889, 4893, 4897, 4899, 4901, 4903, 4907, 4913, + 4915, 4917, 4919, 4921, 4925, 4928, 4933, 4940, 4947, 4948, + 4950, 4952, 4954, 4955, 4958, 4961, 4966, 4973, 4979, 4984, + 4991, 4993, 4995, 4997, 4999, 5001, 5003, 5004, 5006, 5010, + 5012, 5013, 5021, 5025, 5027, 5030, 5034, 5037, 5038, 5041, + 5042, 5045, 5050, 5056, 5065, 5068, 5072, 5078, 5080, 5081, + 5084, 5085, 5088, 5092, 5096, 5100, 5104, 5106, 5108, 5110, + 5113, 5117, 5120, 5123, 5126, 5129, 5133, 5138, 5142, 5144, + 5146, 5148, 5150, 5152, 5154, 5155, 5157, 5161, 5164, 5174, + 5187, 5199, 5212, 5227, 5231, 5236, 5241, 5242, 5250, 5261, + 5271, 5274, 5278, 5279, 5284, 5286, 5288, 5290, 5292, 5294, + 5296, 5298, 5300, 5302, 5304, 5306, 5308, 5310, 5312, 5314, + 5316, 5318, 5320, 5322, 5324, 5326, 5328, 5330, 5332, 5334, + 5336, 5338, 5340, 5342, 5344, 5346, 5348, 5350, 5352, 5354, + 5356, 5358, 5360, 5362, 5364, 5366, 5368, 5370, 5372, 5374, + 5376, 5378, 5380, 5382, 5384, 5386, 5388, 5390, 5392, 5394, + 5396, 5398, 5400, 5402, 5404, 5406, 5408, 5410, 5412, 5414, + 5416, 5418, 5420, 5422, 5424, 5426, 5428, 5430, 5432, 5434, + 5436, 5438, 5440, 5442, 5444, 5446, 5448, 5450, 5452, 5454, + 5456, 5458, 5460, 5462, 5464, 5466, 5468, 5470, 5472, 5474, + 5476, 5478, 5480, 5482, 5484, 5486, 5488, 5490, 5492, 5494, + 5496, 5498, 5500, 5502, 5504, 5506, 5508, 5510, 5512, 5514, + 5516, 5518, 5520, 5522, 5524, 5526, 5528, 5530, 5532, 5534, + 5536, 5538, 5540, 5542, 5544, 5546, 5548, 5550, 5552, 5554, + 5556, 5558, 5560, 5562, 5564, 5566, 5568, 5570, 5572, 5574, + 5576, 5578, 5580, 5582, 5584, 5586, 5588, 5590, 5592, 5594, + 5596, 5598, 5600, 5602, 5604, 5606, 5608, 5610, 5612, 5614, + 5616, 5618, 5620, 5622, 5624, 5626, 5628, 5630, 5632, 5634, + 5636, 5638, 5640, 5642, 5644, 5646, 5648, 5650, 5652, 5654, + 5656, 5658, 5660, 5662, 5664, 5666, 5668, 5670, 5672, 5674, + 5676, 5678, 5680, 5682, 5684, 5686, 5688, 5690, 5692, 5694, + 5696, 5698, 5700, 5702, 5704, 5706, 5708, 5710, 5712, 5714, + 5716, 5718, 5720, 5722, 5724, 5726, 5728, 5730, 5732, 5734, + 5736, 5738, 5740, 5742, 5744, 5746, 5748, 5750, 5752, 5754, + 5756, 5758, 5760, 5762, 5764, 5766, 5768, 5770, 5772, 5774, + 5776, 5778, 5780, 5782, 5784, 5786, 5788, 5790, 5792, 5794, + 5796, 5798, 5800, 5802, 5804, 5806, 5808, 5810, 5812, 5814, + 5816, 5818, 5820, 5822, 5824, 5826, 5828, 5830, 5832, 5834, + 5836, 5838, 5840, 5842, 5844, 5846, 5848, 5850, 5852, 5854, + 5856, 5858, 5860, 5862, 5864, 5866, 5868, 5870, 5872, 5874, + 5876, 5878, 5880, 5882, 5884, 5886, 5888, 5890, 5892, 5894, + 5896, 5898, 5900, 5902, 5904, 5906, 5908, 5910, 5912, 5914, + 5916, 5918, 5920, 5922, 5924, 5926, 5928, 5930, 5932, 5934, + 5936, 5938, 5940, 5942, 5944, 5946, 5948, 5950, 5952, 5954, + 5956, 5958, 5960, 5962, 5964, 5966, 5968, 5970, 5972, 5974, + 5976, 5978, 5980, 5982, 5984, 5986, 5988, 5990, 5992, 5994, + 5996, 5998, 6000, 6002, 6004, 6006, 6008, 6010, 6012, 6014, + 6016, 6018, 6020, 6022, 6024, 6026, 6028, 6030, 6032, 6034, + 6036, 6038, 6040, 6042, 6044, 6046, 6048, 6050, 6052, 6054, + 6056, 6058, 6060, 6062, 6064, 6066, 6068, 6070, 6072, 6074, + 6076, 6078, 6080, 6082, 6084, 6086, 6088, 6090, 6092, 6094, + 6096, 6098, 6100, 6102, 6104, 6106, 6108, 6110, 6112, 6114, + 6116, 6118, 6120, 6122, 6124, 6126, 6128, 6130, 6132, 6134, + 6136, 6138, 6140, 6142, 6144, 6146, 6148, 6150, 6152, 6154, + 6156, 6158, 6160, 6162, 6164, 6166, 6168, 6170, 6172, 6174, + 6176, 6178, 6180, 6182, 6184, 6186, 6188, 6190, 6192, 6194, + 6196, 6198, 6200, 6202, 6204, 6206, 6208, 6210, 6212, 6214, + 6216, 6218, 6220, 6222, 6224, 6226, 6228, 6230, 6232, 6234, + 6236, 6238, 6240, 6242, 6244, 6246, 6248, 6250, 6252, 6254, + 6256, 6258, 6260, 6262, 6264, 6266, 6268, 6270, 6272, 6274, + 6276, 6278, 6280, 6282, 6284, 6286, 6288, 6290, 6292, 6294, + 6296, 6298, 6300, 6302, 6304, 6306, 6308, 6310, 6312, 6314, + 6316, 6318, 6320, 6322, 6324, 6326, 6328, 6330, 6332, 6334, + 6336, 6338, 6340, 6342, 6344, 6346, 6348, 6350, 6352, 6354, + 6356, 6358, 6360, 6362, 6364, 6366, 6368, 6370, 6372, 6374, + 6376, 6378, 6380, 6382, 6384, 6386, 6388, 6390, 6392, 6394, + 6396, 6398, 6400, 6402, 6404, 6406, 6408, 6410, 6412, 6414, + 6416, 6418, 6420, 6422, 6424, 6426, 6428, 6430, 6432, 6434, + 6436, 6438, 6440, 6442, 6444, 6446, 6448, 6450, 6452, 6454, + 6456, 6458, 6460, 6462, 6464, 6466, 6468, 6470, 6472, 6474, + 6476, 6478, 6480, 6482, 6484, 6486, 6488, 6490, 6492, 6494, + 6496, 6498, 6500, 6502, 6504, 6506, 6508, 6510, 6512, 6514, + 6516, 6518, 6520, 6522, 6524, 6526, 6528 }; /* YYRHS -- A `-1'-separated list of the rules' RHS. */ @@ -2318,295 +2318,295 @@ static const yytype_int16 yyrhs[] = 831, -1, 839, -1, 39, 687, -1, 39, 516, 874, 517, -1, 526, 9, -1, 516, 874, 517, -1, 527, 858, 528, -1, 247, 527, 862, 528, -1, 924, 518, - 519, -1, 924, 518, 875, 710, 709, 519, -1, 924, - 518, 466, 876, 710, 709, 519, -1, 924, 518, 875, - 522, 466, 876, 710, 709, 519, -1, 924, 518, 30, - 875, 710, 709, 519, -1, 924, 518, 132, 875, 710, - 709, 519, -1, 834, 840, 841, 842, 846, -1, 837, - -1, 834, -1, 837, -1, 81, 167, 518, 824, 519, - -1, 66, 518, 824, 40, 788, 519, -1, 441, 518, - 824, 40, 788, 519, -1, 159, 518, 878, 519, -1, - 303, 518, 880, 519, -1, 321, 518, 882, 519, -1, - 414, 518, 883, 519, -1, 435, 518, 824, 40, 788, - 519, -1, 437, 518, 58, 886, 519, -1, 437, 518, - 233, 886, 519, -1, 437, 518, 432, 886, 519, -1, - 437, 518, 886, 519, -1, 281, 518, 824, 522, 824, - 519, -1, 79, 518, 873, 519, -1, 893, -1, 516, - 824, 167, 838, 199, 824, 517, -1, 516, 824, 167, - 838, 199, 826, 192, 824, 517, -1, 481, 181, 518, - 711, 519, -1, -1, 163, 518, 477, 824, 519, -1, - 163, 518, 824, 519, -1, -1, 155, -1, -1, 479, - 844, -1, -1, 845, -1, 844, 522, 845, -1, 546, - 40, 847, -1, 301, 847, -1, 301, 546, -1, -1, - 518, 848, 849, 710, 850, 519, -1, 546, -1, -1, - 310, 59, 872, -1, -1, 340, 851, 853, -1, 369, - 851, 853, -1, 184, 851, 853, -1, -1, 852, -1, - 53, 852, 36, 852, -1, 444, 324, -1, 444, 166, - -1, 104, 368, -1, 824, 324, -1, 824, 166, -1, - 148, 104, 368, -1, 148, 181, -1, 148, 428, -1, - 148, 273, 298, -1, -1, 368, 518, 873, 519, -1, - 368, 518, 519, -1, 854, -1, 518, 872, 522, 824, - 519, -1, 547, 523, 824, -1, 856, -1, 857, 522, - 856, -1, 857, -1, 857, 522, -1, 824, 523, 824, - -1, 859, -1, 860, 522, 859, -1, 860, -1, 860, - 522, -1, 861, -1, -1, 38, -1, 399, -1, 30, - -1, 8, -1, 865, -1, 509, -1, 510, -1, 511, - -1, 512, -1, 15, -1, 513, -1, 514, -1, 16, - -1, 505, -1, 506, -1, 507, -1, 19, -1, 20, - -1, 21, -1, 8, -1, 292, 518, 869, 519, -1, - 864, -1, 292, 518, 869, 519, -1, 864, -1, 292, - 518, 869, 519, -1, 237, -1, 502, 237, -1, 177, - -1, 502, 177, -1, 194, -1, 502, 194, -1, 864, - -1, 546, 520, 869, -1, 826, -1, 870, 522, 826, - -1, 870, -1, 870, 522, -1, 824, -1, 872, 522, - 824, -1, 872, -1, 872, 522, -1, 873, -1, -1, - 876, -1, 875, 522, 876, -1, 824, -1, 933, 13, - 824, -1, 933, 14, 824, -1, 788, -1, 877, 522, - 788, -1, 879, 172, 824, -1, -1, 3, -1, 810, - -1, 811, -1, 812, -1, 813, -1, 814, -1, 815, - -1, 816, -1, 817, -1, 818, -1, 819, -1, 820, - -1, 821, -1, 822, -1, 548, -1, 824, 881, 884, - 885, -1, 824, 881, 884, -1, 318, 824, -1, 825, - 199, 825, -1, -1, 824, 884, 885, -1, 824, 885, - 884, -1, 824, 884, -1, 824, 885, -1, 872, -1, - -1, 172, 824, -1, 167, 824, -1, 824, 172, 873, - -1, 172, 873, -1, 873, -1, 687, -1, 518, 873, - 519, -1, 895, -1, 830, -1, 65, 892, 889, 891, - 143, -1, 890, -1, 889, 890, -1, 476, 824, 427, - 824, -1, 139, 824, -1, -1, 824, -1, -1, 894, - -1, 893, 522, 894, -1, 546, -1, 546, -1, 546, - 549, -1, 516, 824, 517, -1, 516, 896, 523, 896, - 517, -1, 516, 896, 523, 896, 523, 896, 517, -1, - 516, 896, 523, 510, 523, 896, 517, -1, 824, -1, - -1, -1, 897, 550, -1, -1, 518, 519, -1, 518, - 875, 519, -1, 520, 551, 898, -1, 516, 824, 517, + 519, -1, 924, 518, 711, 519, -1, 924, 518, 875, + 710, 709, 519, -1, 924, 518, 466, 876, 710, 709, + 519, -1, 924, 518, 875, 522, 466, 876, 710, 709, + 519, -1, 924, 518, 30, 875, 710, 709, 519, -1, + 924, 518, 132, 875, 710, 709, 519, -1, 834, 840, + 841, 842, 846, -1, 837, -1, 834, -1, 837, -1, + 81, 167, 518, 824, 519, -1, 66, 518, 824, 40, + 788, 519, -1, 441, 518, 824, 40, 788, 519, -1, + 159, 518, 878, 519, -1, 303, 518, 880, 519, -1, + 321, 518, 882, 519, -1, 414, 518, 883, 519, -1, + 435, 518, 824, 40, 788, 519, -1, 437, 518, 58, + 886, 519, -1, 437, 518, 233, 886, 519, -1, 437, + 518, 432, 886, 519, -1, 437, 518, 886, 519, -1, + 281, 518, 824, 522, 824, 519, -1, 79, 518, 873, + 519, -1, 893, -1, 516, 824, 167, 838, 199, 824, + 517, -1, 516, 824, 167, 838, 199, 826, 192, 824, + 517, -1, 481, 181, 518, 711, 519, -1, -1, 163, + 518, 477, 824, 519, -1, 163, 518, 824, 519, -1, + -1, 155, -1, -1, 479, 844, -1, -1, 845, -1, + 844, 522, 845, -1, 546, 40, 847, -1, 301, 847, + -1, 301, 546, -1, -1, 518, 848, 849, 710, 850, + 519, -1, 546, -1, -1, 310, 59, 872, -1, -1, + 340, 851, 853, -1, 369, 851, 853, -1, 184, 851, + 853, -1, -1, 852, -1, 53, 852, 36, 852, -1, + 444, 324, -1, 444, 166, -1, 104, 368, -1, 824, + 324, -1, 824, 166, -1, 148, 104, 368, -1, 148, + 181, -1, 148, 428, -1, 148, 273, 298, -1, -1, + 368, 518, 873, 519, -1, 368, 518, 519, -1, 854, + -1, 518, 872, 522, 824, 519, -1, 547, 523, 824, + -1, 856, -1, 857, 522, 856, -1, 857, -1, 857, + 522, -1, 824, 523, 824, -1, 859, -1, 860, 522, + 859, -1, 860, -1, 860, 522, -1, 861, -1, -1, + 38, -1, 399, -1, 30, -1, 8, -1, 865, -1, + 509, -1, 510, -1, 511, -1, 512, -1, 15, -1, + 513, -1, 514, -1, 16, -1, 505, -1, 506, -1, + 507, -1, 19, -1, 20, -1, 21, -1, 8, -1, + 292, 518, 869, 519, -1, 864, -1, 292, 518, 869, + 519, -1, 864, -1, 292, 518, 869, 519, -1, 237, + -1, 502, 237, -1, 177, -1, 502, 177, -1, 194, + -1, 502, 194, -1, 864, -1, 546, 520, 869, -1, + 826, -1, 870, 522, 826, -1, 870, -1, 870, 522, + -1, 824, -1, 872, 522, 824, -1, 872, -1, 872, + 522, -1, 873, -1, -1, 876, -1, 875, 522, 876, + -1, 824, -1, 933, 13, 824, -1, 933, 14, 824, + -1, 788, -1, 877, 522, 788, -1, 879, 172, 824, + -1, -1, 3, -1, 810, -1, 811, -1, 812, -1, + 813, -1, 814, -1, 815, -1, 816, -1, 817, -1, + 818, -1, 819, -1, 820, -1, 821, -1, 822, -1, + 548, -1, 824, 881, 884, 885, -1, 824, 881, 884, + -1, 318, 824, -1, 825, 199, 825, -1, -1, 824, + 884, 885, -1, 824, 885, 884, -1, 824, 884, -1, + 824, 885, -1, 872, -1, -1, 172, 824, -1, 167, + 824, -1, 824, 172, 873, -1, 172, 873, -1, 873, + -1, 687, -1, 518, 873, 519, -1, 895, -1, 830, + -1, 65, 892, 889, 891, 143, -1, 890, -1, 889, + 890, -1, 476, 824, 427, 824, -1, 139, 824, -1, + -1, 824, -1, -1, 894, -1, 893, 522, 894, -1, + 546, -1, 546, -1, 546, 549, -1, 516, 824, 517, -1, 516, 896, 523, 896, 517, -1, 516, 896, 523, 896, 523, 896, 517, -1, 516, 896, 523, 510, 523, - 896, 517, -1, -1, 900, 899, -1, 45, -1, -1, - 904, -1, -1, 905, -1, 903, 522, 905, -1, 903, - -1, 903, 522, -1, 824, 40, 934, -1, 824, 3, - -1, 824, -1, 546, 523, 824, -1, 148, 518, 909, - 519, -1, 148, 907, -1, 547, -1, 907, 520, 547, - -1, 907, -1, 908, 522, 907, -1, 908, -1, 908, - 522, -1, 906, -1, -1, 824, 40, 546, -1, 911, - -1, 912, 522, 911, -1, 912, -1, 912, 522, -1, - 355, 518, 913, 519, -1, 355, 911, -1, -1, 907, - 40, 546, -1, 915, -1, 916, 522, 915, -1, 916, - -1, 916, 522, -1, 353, 518, 917, 519, -1, 353, - 915, -1, -1, 545, -1, 919, 522, 545, -1, 923, - -1, 920, 522, 923, -1, 920, -1, 920, 522, -1, - 921, -1, 518, 921, 519, -1, 547, -1, 928, -1, - 546, 549, -1, 926, -1, 4, -1, 548, 897, -1, - 6, -1, 7, -1, 924, 548, -1, 924, 518, 875, - 710, 709, 519, 548, -1, 792, 548, -1, 808, 518, - 824, 519, 823, -1, 808, 926, 823, -1, 808, 548, - 823, -1, 438, -1, 160, -1, 280, -1, 9, -1, - 3, -1, 1005, -1, 1010, -1, 3, -1, 1005, -1, - 1007, -1, 3, -1, 1005, -1, 1008, -1, 546, -1, - 546, 931, -1, 520, 551, -1, 931, 520, 551, -1, - 518, 921, 519, -1, -1, 927, -1, 552, -1, 5, - -1, 326, 923, 936, 40, 937, -1, 518, 877, 519, - -1, -1, 686, -1, 555, -1, 667, -1, 668, -1, - 982, -1, 994, -1, 100, 373, 545, 939, -1, 100, - 373, 192, 275, 152, 545, 939, -1, 100, 295, 355, - 373, 545, 939, -1, 939, 940, -1, -1, 604, -1, - 941, -1, 580, -1, 1000, -1, 100, 947, 203, 944, - 945, 290, 545, 943, 518, 574, 519, 946, 781, -1, - 100, 947, 203, 944, 192, 275, 152, 633, 290, 545, - 943, 518, 574, 519, 946, 781, -1, 546, -1, 457, - 942, -1, -1, 89, -1, -1, 633, -1, -1, 480, - 619, -1, -1, 448, -1, -1, 32, 419, 775, 389, - 373, 923, -1, 32, 419, 192, 152, 775, 389, 373, - 923, -1, 32, 384, 545, 389, 373, 923, -1, 32, - 384, 192, 152, 545, 389, 373, 923, -1, 32, 470, - 545, 389, 373, 923, -1, 32, 470, 192, 152, 545, - 389, 373, 923, -1, 168, 75, 950, -1, 75, 950, - -1, 546, -1, -1, 84, 290, 953, 545, 222, 952, - -1, 84, 290, 82, 824, 222, 952, -1, 548, -1, - 280, -1, 419, -1, 384, -1, 174, -1, 246, -1, - 246, 419, -1, 470, -1, 108, -1, 203, -1, 373, - -1, 442, -1, 154, 108, 548, 676, -1, 154, 108, - 546, 431, 548, 676, -1, 198, 108, 548, -1, 153, - 959, -1, 153, 963, 957, 959, -1, 153, 468, 959, - -1, 153, 518, 962, 519, 959, -1, 468, -1, -1, - 964, -1, 594, -1, -1, 948, -1, 591, -1, 533, - -1, 999, -1, 949, -1, 668, -1, 1002, -1, 658, - -1, 938, -1, 580, -1, 604, -1, 576, -1, 544, - -1, 982, -1, 652, -1, 587, -1, 941, -1, 555, - -1, 973, -1, 579, -1, 935, -1, 553, -1, 686, - -1, 600, -1, 667, -1, 586, -1, 977, -1, 991, - -1, 967, -1, 994, -1, 1000, -1, 3, -1, 1005, - -1, 1009, -1, 960, -1, 548, -1, 965, -1, 962, - 522, 965, -1, 35, -1, 34, -1, 438, -1, 160, - -1, 290, -1, 961, -1, 966, 958, -1, 960, -1, - 963, -1, 389, 968, -1, 389, 241, 968, -1, 389, - 388, 968, -1, 389, 178, 968, -1, 389, 465, 968, - -1, 969, -1, 998, 172, 104, -1, 429, 501, 971, - -1, 373, 548, -1, 998, 431, 972, -1, 998, 507, - 972, -1, 824, -1, 548, -1, 3, -1, 808, 548, - 823, -1, 808, 518, 926, 519, 548, -1, 594, -1, - 117, -1, 241, -1, 970, -1, 972, 522, 970, -1, - 240, 975, -1, 974, 214, 975, 976, -1, 974, 214, - 975, 172, 546, 976, -1, 974, 214, 975, 172, 548, - 976, -1, -1, 168, -1, 548, -1, 546, -1, -1, - 469, 548, -1, 469, 546, -1, 458, 979, 981, 957, - -1, 458, 979, 981, 957, 545, 932, -1, 458, 979, - 981, 957, 986, -1, 458, 518, 980, 519, -1, 458, - 518, 980, 519, 545, 932, -1, 963, -1, 468, -1, - 171, -1, 173, -1, 3, -1, 173, -1, -1, 978, - -1, 980, 522, 978, -1, 171, -1, -1, 560, 122, - 172, 983, 985, 984, 566, -1, 439, 704, 983, -1, - 775, -1, 775, 546, -1, 775, 40, 546, -1, 477, - 824, -1, -1, 457, 756, -1, -1, 963, 957, -1, - 963, 957, 545, 932, -1, 47, 989, 548, 990, 676, - -1, 47, 192, 275, 152, 989, 548, 990, 676, -1, - 128, 552, -1, 128, 108, 552, -1, 128, 108, 192, - 152, 552, -1, 108, -1, -1, 40, 546, -1, -1, - 357, 993, -1, 357, 241, 993, -1, 357, 388, 993, - -1, 357, 178, 993, -1, 357, 465, 993, -1, 998, - -1, 30, -1, 992, -1, 429, 501, -1, 433, 224, - 236, -1, 996, 686, -1, 415, 686, -1, 415, 545, - -1, 996, 545, -1, 996, 429, 501, -1, 996, 433, - 224, 236, -1, 996, 30, 997, -1, 996, -1, 127, - -1, 126, -1, 393, -1, 995, -1, 420, -1, -1, - 546, -1, 998, 520, 546, -1, 61, 834, -1, 100, + 896, 517, -1, 824, -1, -1, -1, 897, 550, -1, + -1, 518, 519, -1, 518, 875, 519, -1, 520, 551, + 898, -1, 516, 824, 517, -1, 516, 896, 523, 896, + 517, -1, 516, 896, 523, 896, 523, 896, 517, -1, + 516, 896, 523, 510, 523, 896, 517, -1, -1, 900, + 899, -1, 45, -1, -1, 904, -1, -1, 905, -1, + 903, 522, 905, -1, 903, -1, 903, 522, -1, 824, + 40, 934, -1, 824, 3, -1, 824, -1, 546, 523, + 824, -1, 148, 518, 909, 519, -1, 148, 907, -1, + 547, -1, 907, 520, 547, -1, 907, -1, 908, 522, + 907, -1, 908, -1, 908, 522, -1, 906, -1, -1, + 824, 40, 546, -1, 911, -1, 912, 522, 911, -1, + 912, -1, 912, 522, -1, 355, 518, 913, 519, -1, + 355, 911, -1, -1, 907, 40, 546, -1, 915, -1, + 916, 522, 915, -1, 916, -1, 916, 522, -1, 353, + 518, 917, 519, -1, 353, 915, -1, -1, 545, -1, + 919, 522, 545, -1, 923, -1, 920, 522, 923, -1, + 920, -1, 920, 522, -1, 921, -1, 518, 921, 519, + -1, 547, -1, 928, -1, 546, 549, -1, 926, -1, + 4, -1, 548, 897, -1, 6, -1, 7, -1, 924, + 548, -1, 924, 518, 875, 710, 709, 519, 548, -1, + 792, 548, -1, 808, 518, 824, 519, 823, -1, 808, + 926, 823, -1, 808, 548, 823, -1, 438, -1, 160, + -1, 280, -1, 9, -1, 3, -1, 1005, -1, 1010, + -1, 3, -1, 1005, -1, 1007, -1, 3, -1, 1005, + -1, 1008, -1, 546, -1, 546, 931, -1, 520, 551, + -1, 931, 520, 551, -1, 518, 921, 519, -1, -1, + 927, -1, 552, -1, 5, -1, 326, 923, 936, 40, + 937, -1, 518, 877, 519, -1, -1, 686, -1, 555, + -1, 667, -1, 668, -1, 982, -1, 994, -1, 100, + 373, 545, 939, -1, 100, 373, 192, 275, 152, 545, + 939, -1, 100, 295, 355, 373, 545, 939, -1, 939, + 940, -1, -1, 604, -1, 941, -1, 580, -1, 1000, + -1, 100, 947, 203, 944, 945, 290, 545, 943, 518, + 574, 519, 946, 781, -1, 100, 947, 203, 944, 192, + 275, 152, 633, 290, 545, 943, 518, 574, 519, 946, + 781, -1, 546, -1, 457, 942, -1, -1, 89, -1, + -1, 633, -1, -1, 480, 619, -1, -1, 448, -1, + -1, 32, 419, 775, 389, 373, 923, -1, 32, 419, + 192, 152, 775, 389, 373, 923, -1, 32, 384, 545, + 389, 373, 923, -1, 32, 384, 192, 152, 545, 389, + 373, 923, -1, 32, 470, 545, 389, 373, 923, -1, + 32, 470, 192, 152, 545, 389, 373, 923, -1, 168, + 75, 950, -1, 75, 950, -1, 546, -1, -1, 84, + 290, 953, 545, 222, 952, -1, 84, 290, 82, 824, + 222, 952, -1, 548, -1, 280, -1, 419, -1, 384, + -1, 174, -1, 246, -1, 246, 419, -1, 470, -1, + 108, -1, 203, -1, 373, -1, 442, -1, 154, 108, + 548, 676, -1, 154, 108, 546, 431, 548, 676, -1, + 198, 108, 548, -1, 153, 959, -1, 153, 963, 957, + 959, -1, 153, 468, 959, -1, 153, 518, 962, 519, + 959, -1, 468, -1, -1, 964, -1, 594, -1, -1, + 948, -1, 591, -1, 533, -1, 999, -1, 949, -1, + 668, -1, 1002, -1, 658, -1, 938, -1, 580, -1, + 604, -1, 576, -1, 544, -1, 982, -1, 652, -1, + 587, -1, 941, -1, 555, -1, 973, -1, 579, -1, + 935, -1, 553, -1, 686, -1, 600, -1, 667, -1, + 586, -1, 977, -1, 991, -1, 967, -1, 994, -1, + 1000, -1, 3, -1, 1005, -1, 1009, -1, 960, -1, + 548, -1, 965, -1, 962, 522, 965, -1, 35, -1, + 34, -1, 438, -1, 160, -1, 290, -1, 961, -1, + 966, 958, -1, 960, -1, 963, -1, 389, 968, -1, + 389, 241, 968, -1, 389, 388, 968, -1, 389, 178, + 968, -1, 389, 465, 968, -1, 969, -1, 998, 172, + 104, -1, 429, 501, 971, -1, 373, 548, -1, 998, + 431, 972, -1, 998, 507, 972, -1, 824, -1, 548, + -1, 3, -1, 808, 548, 823, -1, 808, 518, 926, + 519, 548, -1, 594, -1, 117, -1, 241, -1, 970, + -1, 972, 522, 970, -1, 240, 975, -1, 974, 214, + 975, 976, -1, 974, 214, 975, 172, 546, 976, -1, + 974, 214, 975, 172, 548, 976, -1, -1, 168, -1, + 548, -1, 546, -1, -1, 469, 548, -1, 469, 546, + -1, 458, 979, 981, 957, -1, 458, 979, 981, 957, + 545, 932, -1, 458, 979, 981, 957, 986, -1, 458, + 518, 980, 519, -1, 458, 518, 980, 519, 545, 932, + -1, 963, -1, 468, -1, 171, -1, 173, -1, 3, + -1, 173, -1, -1, 978, -1, 980, 522, 978, -1, + 171, -1, -1, 560, 122, 172, 983, 985, 984, 566, + -1, 439, 704, 983, -1, 775, -1, 775, 546, -1, + 775, 40, 546, -1, 477, 824, -1, -1, 457, 756, + -1, -1, 963, 957, -1, 963, 957, 545, 932, -1, + 47, 989, 548, 990, 676, -1, 47, 192, 275, 152, + 989, 548, 990, 676, -1, 128, 552, -1, 128, 108, + 552, -1, 128, 108, 192, 152, 552, -1, 108, -1, + -1, 40, 546, -1, -1, 357, 993, -1, 357, 241, + 993, -1, 357, 388, 993, -1, 357, 178, 993, -1, + 357, 465, 993, -1, 998, -1, 30, -1, 992, -1, + 429, 501, -1, 433, 224, 236, -1, 996, 686, -1, + 415, 686, -1, 415, 545, -1, 996, 545, -1, 996, + 429, 501, -1, 996, 433, 224, 236, -1, 996, 30, + 997, -1, 996, -1, 127, -1, 126, -1, 393, -1, + 995, -1, 420, -1, -1, 546, -1, 998, 520, 546, + -1, 61, 834, -1, 100, 650, 470, 545, 639, 946, + 40, 686, 1001, -1, 100, 650, 470, 192, 275, 152, + 545, 639, 946, 40, 686, 1001, -1, 100, 295, 355, 650, 470, 545, 639, 946, 40, 686, 1001, -1, 100, - 650, 470, 192, 275, 152, 545, 639, 946, 40, 686, - 1001, -1, 100, 295, 355, 650, 470, 545, 639, 946, - 40, 686, 1001, -1, 100, 650, 345, 470, 545, 518, - 643, 519, 946, 40, 686, 1001, -1, 100, 295, 355, 650, 345, 470, 545, 518, 643, 519, 946, 40, 686, - 1001, -1, 480, 74, 293, -1, 480, 64, 74, 293, - -1, 480, 241, 74, 293, -1, -1, 100, 650, 419, - 1004, 40, 686, 1003, -1, 100, 650, 419, 192, 275, - 152, 1004, 40, 686, 1003, -1, 100, 295, 355, 650, - 419, 1004, 40, 686, 1003, -1, 480, 107, -1, 480, - 273, 107, -1, -1, 545, 639, 626, 618, -1, 22, - -1, 23, -1, 24, -1, 25, -1, 26, -1, 27, - -1, 28, -1, 29, -1, 31, -1, 32, -1, 33, - -1, 43, -1, 44, -1, 46, -1, 47, -1, 48, - -1, 50, -1, 51, -1, 52, -1, 59, -1, 60, - -1, 61, -1, 62, -1, 63, -1, 64, -1, 67, - -1, 68, -1, 69, -1, 70, -1, 73, -1, 75, - -1, 76, -1, 77, -1, 78, -1, 84, -1, 85, - -1, 86, -1, 87, -1, 88, -1, 90, -1, 91, - -1, 92, -1, 94, -1, 95, -1, 96, -1, 97, - -1, 98, -1, 99, -1, 102, -1, 103, -1, 104, - -1, 105, -1, 106, -1, 107, -1, 108, -1, 109, - -1, 110, -1, 111, -1, 113, -1, 114, -1, 116, - -1, 118, -1, 120, -1, 121, -1, 122, -1, 123, - -1, 124, -1, 125, -1, 128, -1, 129, -1, 130, - -1, 131, -1, 134, -1, 135, -1, 136, -1, 137, - -1, 138, -1, 140, -1, 141, -1, 142, -1, 144, - -1, 145, -1, 146, -1, 148, -1, 149, -1, 150, - -1, 151, -1, 153, -1, 154, -1, 155, -1, 156, - -1, 157, -1, 158, -1, 161, -1, 163, -1, 164, - -1, 166, -1, 168, -1, 170, -1, 174, -1, 175, - -1, 178, -1, 180, -1, 184, -1, 185, -1, 187, - -1, 188, -1, 189, -1, 190, -1, 191, -1, 192, - -1, 193, -1, 195, -1, 196, -1, 197, -1, 198, - -1, 200, -1, 201, -1, 202, -1, 203, -1, 204, - -1, 205, -1, 206, -1, 208, -1, 211, -1, 212, - -1, 213, -1, 214, -1, 215, -1, 221, -1, 224, - -1, 226, -1, 227, -1, 228, -1, 229, -1, 230, - -1, 231, -1, 234, -1, 236, -1, 239, -1, 240, - -1, 241, -1, 242, -1, 243, -1, 244, -1, 245, - -1, 246, -1, 248, -1, 249, -1, 250, -1, 251, - -1, 252, -1, 253, -1, 254, -1, 255, -1, 256, - -1, 257, -1, 258, -1, 259, -1, 260, -1, 261, - -1, 262, -1, 263, -1, 264, -1, 265, -1, 266, - -1, 267, -1, 271, -1, 272, -1, 273, -1, 276, - -1, 277, -1, 279, -1, 282, -1, 284, -1, 285, - -1, 286, -1, 288, -1, 289, -1, 292, -1, 293, - -1, 294, -1, 297, -1, 298, -1, 301, -1, 304, - -1, 305, -1, 306, -1, 307, -1, 308, -1, 309, - -1, 310, -1, 311, -1, 312, -1, 313, -1, 314, - -1, 319, -1, 320, -1, 323, -1, 324, -1, 326, - -1, 327, -1, 328, -1, 330, -1, 331, -1, 332, - -1, 333, -1, 334, -1, 335, -1, 337, -1, 338, - -1, 339, -1, 340, -1, 341, -1, 343, -1, 344, - -1, 345, -1, 346, -1, 348, -1, 349, -1, 350, - -1, 351, -1, 352, -1, 353, -1, 354, -1, 355, - -1, 356, -1, 357, -1, 358, -1, 359, -1, 360, - -1, 362, -1, 363, -1, 365, -1, 366, -1, 367, - -1, 369, -1, 370, -1, 371, -1, 372, -1, 373, - -1, 374, -1, 375, -1, 376, -1, 377, -1, 378, - -1, 379, -1, 380, -1, 381, -1, 384, -1, 385, - -1, 386, -1, 387, -1, 388, -1, 389, -1, 391, - -1, 392, -1, 395, -1, 396, -1, 398, -1, 400, - -1, 401, -1, 402, -1, 403, -1, 404, -1, 405, - -1, 406, -1, 407, -1, 408, -1, 409, -1, 410, - -1, 411, -1, 413, -1, 417, -1, 418, -1, 420, - -1, 422, -1, 423, -1, 424, -1, 425, -1, 426, - -1, 428, -1, 433, -1, 434, -1, 436, -1, 439, - -1, 440, -1, 442, -1, 443, -1, 444, -1, 445, - -1, 446, -1, 449, -1, 450, -1, 451, -1, 453, - -1, 454, -1, 455, -1, 456, -1, 458, -1, 459, - -1, 460, -1, 461, -1, 462, -1, 465, -1, 467, - -1, 469, -1, 470, -1, 471, -1, 472, -1, 473, - -1, 474, -1, 475, -1, 478, -1, 481, -1, 482, - -1, 483, -1, 484, -1, 485, -1, 486, -1, 498, - -1, 499, -1, 500, -1, 501, -1, 53, -1, 54, - -1, 56, -1, 57, -1, 71, -1, 72, -1, 79, - -1, 83, -1, 112, -1, 115, -1, 152, -1, 159, - -1, 165, -1, 176, -1, 182, -1, 183, -1, 210, - -1, 216, -1, 217, -1, 219, -1, 247, -1, 268, - -1, 270, -1, 274, -1, 281, -1, 283, -1, 299, - -1, 303, -1, 321, -1, 325, -1, 342, -1, 368, - -1, 390, -1, 397, -1, 412, -1, 414, -1, 429, - -1, 430, -1, 435, -1, 437, -1, 441, -1, 463, - -1, 464, -1, 487, -1, 488, -1, 489, -1, 490, - -1, 491, -1, 492, -1, 493, -1, 494, -1, 495, - -1, 496, -1, 497, -1, 42, -1, 49, -1, 55, - -1, 81, -1, 89, -1, 101, -1, 171, -1, 173, - -1, 176, -1, 177, -1, 194, -1, 209, -1, 222, - -1, 223, -1, 225, -1, 235, -1, 237, -1, 247, - -1, 269, -1, 278, -1, 300, -1, 302, -1, 322, - -1, 364, -1, 394, -1, 412, -1, 421, -1, 468, - -1, 37, -1, 42, -1, 49, -1, 55, -1, 81, - -1, 83, -1, 89, -1, 101, -1, 171, -1, 173, - -1, 177, -1, 194, -1, 209, -1, 222, -1, 223, - -1, 225, -1, 235, -1, 237, -1, 269, -1, 278, - -1, 300, -1, 302, -1, 322, -1, 364, -1, 383, - -1, 394, -1, 421, -1, 441, -1, 468, -1, 37, - -1, 42, -1, 49, -1, 53, -1, 54, -1, 55, - -1, 56, -1, 57, -1, 72, -1, 71, -1, 79, - -1, 81, -1, 83, -1, 89, -1, 101, -1, 112, - -1, 115, -1, 152, -1, 159, -1, 165, -1, 171, - -1, 173, -1, 176, -1, 177, -1, 182, -1, 183, - -1, 194, -1, 209, -1, 210, -1, 217, -1, 219, - -1, 216, -1, 222, -1, 223, -1, 225, -1, 235, - -1, 237, -1, 247, -1, 268, -1, 269, -1, 270, - -1, 274, -1, 278, -1, 281, -1, 283, -1, 300, - -1, 299, -1, 302, -1, 303, -1, 321, -1, 322, - -1, 325, -1, 342, -1, 364, -1, 368, -1, 383, - -1, 390, -1, 394, -1, 397, -1, 412, -1, 414, - -1, 421, -1, 429, -1, 430, -1, 435, -1, 437, - -1, 441, -1, 463, -1, 464, -1, 468, -1, 487, - -1, 488, -1, 489, -1, 490, -1, 491, -1, 492, - -1, 493, -1, 494, -1, 495, -1, 496, -1, 497, - -1, 37, -1, 42, -1, 49, -1, 55, -1, 81, - -1, 83, -1, 89, -1, 101, -1, 171, -1, 173, - -1, 176, -1, 177, -1, 194, -1, 209, -1, 222, - -1, 223, -1, 225, -1, 235, -1, 237, -1, 247, - -1, 269, -1, 278, -1, 300, -1, 302, -1, 322, - -1, 364, -1, 383, -1, 394, -1, 412, -1, 421, - -1, 441, -1, 468, -1, 30, -1, 34, -1, 35, - -1, 36, -1, 38, -1, 39, -1, 40, -1, 41, - -1, 45, -1, 58, -1, 65, -1, 66, -1, 74, - -1, 80, -1, 82, -1, 93, -1, 100, -1, 117, - -1, 119, -1, 126, -1, 127, -1, 132, -1, 133, - -1, 139, -1, 143, -1, 147, -1, 160, -1, 162, - -1, 167, -1, 169, -1, 172, -1, 179, -1, 181, - -1, 186, -1, 199, -1, 207, -1, 218, -1, 220, - -1, 232, -1, 233, -1, 238, -1, 275, -1, 280, - -1, 287, -1, 290, -1, 291, -1, 295, -1, 296, - -1, 315, -1, 316, -1, 317, -1, 318, -1, 329, - -1, 336, -1, 347, -1, 361, -1, 382, -1, 393, - -1, 399, -1, 415, -1, 416, -1, 419, -1, 427, - -1, 431, -1, 432, -1, 438, -1, 447, -1, 448, - -1, 452, -1, 457, -1, 466, -1, 476, -1, 477, - -1, 479, -1, 480, -1 + 1001, -1, 100, 295, 355, 650, 345, 470, 545, 518, + 643, 519, 946, 40, 686, 1001, -1, 480, 74, 293, + -1, 480, 64, 74, 293, -1, 480, 241, 74, 293, + -1, -1, 100, 650, 419, 1004, 40, 686, 1003, -1, + 100, 650, 419, 192, 275, 152, 1004, 40, 686, 1003, + -1, 100, 295, 355, 650, 419, 1004, 40, 686, 1003, + -1, 480, 107, -1, 480, 273, 107, -1, -1, 545, + 639, 626, 618, -1, 22, -1, 23, -1, 24, -1, + 25, -1, 26, -1, 27, -1, 28, -1, 29, -1, + 31, -1, 32, -1, 33, -1, 43, -1, 44, -1, + 46, -1, 47, -1, 48, -1, 50, -1, 51, -1, + 52, -1, 59, -1, 60, -1, 61, -1, 62, -1, + 63, -1, 64, -1, 67, -1, 68, -1, 69, -1, + 70, -1, 73, -1, 75, -1, 76, -1, 77, -1, + 78, -1, 84, -1, 85, -1, 86, -1, 87, -1, + 88, -1, 90, -1, 91, -1, 92, -1, 94, -1, + 95, -1, 96, -1, 97, -1, 98, -1, 99, -1, + 102, -1, 103, -1, 104, -1, 105, -1, 106, -1, + 107, -1, 108, -1, 109, -1, 110, -1, 111, -1, + 113, -1, 114, -1, 116, -1, 118, -1, 120, -1, + 121, -1, 122, -1, 123, -1, 124, -1, 125, -1, + 128, -1, 129, -1, 130, -1, 131, -1, 134, -1, + 135, -1, 136, -1, 137, -1, 138, -1, 140, -1, + 141, -1, 142, -1, 144, -1, 145, -1, 146, -1, + 148, -1, 149, -1, 150, -1, 151, -1, 153, -1, + 154, -1, 155, -1, 156, -1, 157, -1, 158, -1, + 161, -1, 163, -1, 164, -1, 166, -1, 168, -1, + 170, -1, 174, -1, 175, -1, 178, -1, 180, -1, + 184, -1, 185, -1, 187, -1, 188, -1, 189, -1, + 190, -1, 191, -1, 192, -1, 193, -1, 195, -1, + 196, -1, 197, -1, 198, -1, 200, -1, 201, -1, + 202, -1, 203, -1, 204, -1, 205, -1, 206, -1, + 208, -1, 211, -1, 212, -1, 213, -1, 214, -1, + 215, -1, 221, -1, 224, -1, 226, -1, 227, -1, + 228, -1, 229, -1, 230, -1, 231, -1, 234, -1, + 236, -1, 239, -1, 240, -1, 241, -1, 242, -1, + 243, -1, 244, -1, 245, -1, 246, -1, 248, -1, + 249, -1, 250, -1, 251, -1, 252, -1, 253, -1, + 254, -1, 255, -1, 256, -1, 257, -1, 258, -1, + 259, -1, 260, -1, 261, -1, 262, -1, 263, -1, + 264, -1, 265, -1, 266, -1, 267, -1, 271, -1, + 272, -1, 273, -1, 276, -1, 277, -1, 279, -1, + 282, -1, 284, -1, 285, -1, 286, -1, 288, -1, + 289, -1, 292, -1, 293, -1, 294, -1, 297, -1, + 298, -1, 301, -1, 304, -1, 305, -1, 306, -1, + 307, -1, 308, -1, 309, -1, 310, -1, 311, -1, + 312, -1, 313, -1, 314, -1, 319, -1, 320, -1, + 323, -1, 324, -1, 326, -1, 327, -1, 328, -1, + 330, -1, 331, -1, 332, -1, 333, -1, 334, -1, + 335, -1, 337, -1, 338, -1, 339, -1, 340, -1, + 341, -1, 343, -1, 344, -1, 345, -1, 346, -1, + 348, -1, 349, -1, 350, -1, 351, -1, 352, -1, + 353, -1, 354, -1, 355, -1, 356, -1, 357, -1, + 358, -1, 359, -1, 360, -1, 362, -1, 363, -1, + 365, -1, 366, -1, 367, -1, 369, -1, 370, -1, + 371, -1, 372, -1, 373, -1, 374, -1, 375, -1, + 376, -1, 377, -1, 378, -1, 379, -1, 380, -1, + 381, -1, 384, -1, 385, -1, 386, -1, 387, -1, + 388, -1, 389, -1, 391, -1, 392, -1, 395, -1, + 396, -1, 398, -1, 400, -1, 401, -1, 402, -1, + 403, -1, 404, -1, 405, -1, 406, -1, 407, -1, + 408, -1, 409, -1, 410, -1, 411, -1, 413, -1, + 417, -1, 418, -1, 420, -1, 422, -1, 423, -1, + 424, -1, 425, -1, 426, -1, 428, -1, 433, -1, + 434, -1, 436, -1, 439, -1, 440, -1, 442, -1, + 443, -1, 444, -1, 445, -1, 446, -1, 449, -1, + 450, -1, 451, -1, 453, -1, 454, -1, 455, -1, + 456, -1, 458, -1, 459, -1, 460, -1, 461, -1, + 462, -1, 465, -1, 467, -1, 469, -1, 470, -1, + 471, -1, 472, -1, 473, -1, 474, -1, 475, -1, + 478, -1, 481, -1, 482, -1, 483, -1, 484, -1, + 485, -1, 486, -1, 498, -1, 499, -1, 500, -1, + 501, -1, 53, -1, 54, -1, 56, -1, 57, -1, + 71, -1, 72, -1, 79, -1, 83, -1, 112, -1, + 115, -1, 152, -1, 159, -1, 165, -1, 176, -1, + 182, -1, 183, -1, 210, -1, 216, -1, 217, -1, + 219, -1, 247, -1, 268, -1, 270, -1, 274, -1, + 281, -1, 283, -1, 299, -1, 303, -1, 321, -1, + 325, -1, 342, -1, 368, -1, 390, -1, 397, -1, + 412, -1, 414, -1, 429, -1, 430, -1, 435, -1, + 437, -1, 441, -1, 463, -1, 464, -1, 487, -1, + 488, -1, 489, -1, 490, -1, 491, -1, 492, -1, + 493, -1, 494, -1, 495, -1, 496, -1, 497, -1, + 42, -1, 49, -1, 55, -1, 81, -1, 89, -1, + 101, -1, 171, -1, 173, -1, 176, -1, 177, -1, + 194, -1, 209, -1, 222, -1, 223, -1, 225, -1, + 235, -1, 237, -1, 247, -1, 269, -1, 278, -1, + 300, -1, 302, -1, 322, -1, 364, -1, 394, -1, + 412, -1, 421, -1, 468, -1, 37, -1, 42, -1, + 49, -1, 55, -1, 81, -1, 83, -1, 89, -1, + 101, -1, 171, -1, 173, -1, 177, -1, 194, -1, + 209, -1, 222, -1, 223, -1, 225, -1, 235, -1, + 237, -1, 269, -1, 278, -1, 300, -1, 302, -1, + 322, -1, 364, -1, 383, -1, 394, -1, 421, -1, + 441, -1, 468, -1, 37, -1, 42, -1, 49, -1, + 53, -1, 54, -1, 55, -1, 56, -1, 57, -1, + 72, -1, 71, -1, 79, -1, 81, -1, 83, -1, + 89, -1, 101, -1, 112, -1, 115, -1, 152, -1, + 159, -1, 165, -1, 171, -1, 173, -1, 176, -1, + 177, -1, 182, -1, 183, -1, 194, -1, 209, -1, + 210, -1, 217, -1, 219, -1, 216, -1, 222, -1, + 223, -1, 225, -1, 235, -1, 237, -1, 247, -1, + 268, -1, 269, -1, 270, -1, 274, -1, 278, -1, + 281, -1, 283, -1, 300, -1, 299, -1, 302, -1, + 303, -1, 321, -1, 322, -1, 325, -1, 342, -1, + 364, -1, 368, -1, 383, -1, 390, -1, 394, -1, + 397, -1, 412, -1, 414, -1, 421, -1, 429, -1, + 430, -1, 435, -1, 437, -1, 441, -1, 463, -1, + 464, -1, 468, -1, 487, -1, 488, -1, 489, -1, + 490, -1, 491, -1, 492, -1, 493, -1, 494, -1, + 495, -1, 496, -1, 497, -1, 37, -1, 42, -1, + 49, -1, 55, -1, 81, -1, 83, -1, 89, -1, + 101, -1, 171, -1, 173, -1, 176, -1, 177, -1, + 194, -1, 209, -1, 222, -1, 223, -1, 225, -1, + 235, -1, 237, -1, 247, -1, 269, -1, 278, -1, + 300, -1, 302, -1, 322, -1, 364, -1, 383, -1, + 394, -1, 412, -1, 421, -1, 441, -1, 468, -1, + 30, -1, 34, -1, 35, -1, 36, -1, 38, -1, + 39, -1, 40, -1, 41, -1, 45, -1, 58, -1, + 65, -1, 66, -1, 74, -1, 80, -1, 82, -1, + 93, -1, 100, -1, 117, -1, 119, -1, 126, -1, + 127, -1, 132, -1, 133, -1, 139, -1, 143, -1, + 147, -1, 160, -1, 162, -1, 167, -1, 169, -1, + 172, -1, 179, -1, 181, -1, 186, -1, 199, -1, + 207, -1, 218, -1, 220, -1, 232, -1, 233, -1, + 238, -1, 275, -1, 280, -1, 287, -1, 290, -1, + 291, -1, 295, -1, 296, -1, 315, -1, 316, -1, + 317, -1, 318, -1, 329, -1, 336, -1, 347, -1, + 361, -1, 382, -1, 393, -1, 399, -1, 415, -1, + 416, -1, 419, -1, 427, -1, 431, -1, 432, -1, + 438, -1, 447, -1, 448, -1, 452, -1, 457, -1, + 466, -1, 476, -1, 477, -1, 479, -1, 480, -1 }; /* YYRLINE[YYN] -- source line where rule number YYN was defined. */ @@ -2717,57 +2717,57 @@ static const yytype_uint16 yyrline[] = 2704, 2708, 2722, 2723, 2737, 2738, 2739, 2750, 2774, 2785, 2795, 2799, 2803, 2810, 2814, 2821, 2828, 2829, 2830, 2831, 2832, 2833, 2834, 2835, 2846, 2851, 2860, 2866, 2873, 2893, - 2897, 2904, 2912, 2920, 2931, 2951, 2987, 2998, 2999, 3006, - 3012, 3014, 3016, 3020, 3029, 3034, 3041, 3056, 3063, 3067, - 3071, 3075, 3079, 3089, 3097, 3106, 3128, 3129, 3133, 3134, - 3135, 3139, 3140, 3147, 3148, 3152, 3153, 3158, 3166, 3168, - 3182, 3185, 3212, 3213, 3216, 3217, 3225, 3233, 3241, 3250, - 3260, 3278, 3324, 3333, 3342, 3351, 3360, 3372, 3373, 3374, - 3375, 3376, 3390, 3391, 3394, 3395, 3399, 3409, 3410, 3414, - 3415, 3419, 3426, 3427, 3432, 3433, 3438, 3439, 3442, 3443, - 3444, 3447, 3448, 3451, 3452, 3453, 3454, 3455, 3456, 3457, - 3458, 3459, 3460, 3461, 3462, 3463, 3464, 3467, 3469, 3474, - 3476, 3481, 3483, 3485, 3487, 3489, 3491, 3493, 3495, 3509, - 3511, 3516, 3520, 3527, 3532, 3538, 3542, 3549, 3554, 3561, - 3566, 3574, 3578, 3584, 3588, 3597, 3608, 3609, 3613, 3617, - 3624, 3625, 3626, 3627, 3628, 3629, 3630, 3631, 3632, 3633, - 3634, 3635, 3636, 3637, 3638, 3648, 3652, 3659, 3666, 3667, - 3683, 3687, 3692, 3696, 3711, 3716, 3720, 3723, 3726, 3727, - 3728, 3731, 3738, 3739, 3740, 3750, 3764, 3765, 3769, 3780, - 3781, 3784, 3785, 3789, 3790, 3793, 3799, 3803, 3810, 3818, - 3826, 3834, 3844, 3845, 3850, 3851, 3855, 3856, 3857, 3861, - 3870, 3878, 3886, 3895, 3910, 3911, 3916, 3917, 3927, 3928, - 3932, 3933, 3937, 3938, 3941, 3957, 3965, 3973, 3983, 3984, - 3988, 3992, 3998, 4000, 4005, 4006, 4010, 4011, 4014, 4018, - 4019, 4023, 4024, 4027, 4028, 4029, 4032, 4036, 4037, 4041, - 4042, 4044, 4045, 4046, 4056, 4057, 4061, 4063, 4069, 4070, - 4074, 4075, 4078, 4089, 4092, 4103, 4107, 4111, 4123, 4127, - 4136, 4143, 4181, 4185, 4189, 4193, 4197, 4201, 4205, 4211, - 4228, 4229, 4230, 4233, 4234, 4235, 4238, 4239, 4240, 4243, - 4244, 4247, 4249, 4254, 4255, 4258, 4262, 4263, 7, 18, - 19, 23, 24, 25, 26, 27, 28, 7, 26, 50, - 73, 80, 85, 86, 87, 88, 8, 33, 62, 66, - 67, 72, 73, 78, 79, 83, 84, 89, 90, 7, - 16, 25, 34, 43, 52, 5, 12, 22, 23, 7, - 15, 26, 27, 30, 31, 32, 33, 34, 35, 36, - 37, 38, 39, 7, 19, 33, 9, 16, 26, 33, - 44, 45, 50, 51, 52, 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, 91, 92, 93, 98, - 99, 104, 108, 116, 117, 122, 123, 124, 130, 135, - 143, 144, 10, 16, 22, 28, 34, 44, 45, 53, - 64, 76, 84, 95, 101, 105, 109, 124, 131, 132, - 133, 137, 138, 7, 17, 26, 35, 46, 47, 49, - 50, 53, 54, 55, 8, 22, 36, 48, 56, 70, - 71, 72, 73, 74, 87, 88, 93, 94, 98, 99, - 7, 18, 31, 35, 42, 53, 54, 60, 61, 9, - 19, 7, 16, 28, 35, 42, 51, 52, 56, 57, - 2, 7, 12, 17, 22, 31, 38, 48, 49, 56, - 3, 10, 17, 24, 31, 38, 45, 52, 61, 61, - 63, 63, 65, 65, 67, 68, 6, 8, 21, 34, - 47, 65, 87, 88, 89, 90, 11, 24, 37, 54, - 55, 56, 61, 74, 74, 74, 74, 74, 74, 74, + 2897, 2903, 2910, 2918, 2926, 2937, 2957, 2993, 3004, 3005, + 3012, 3018, 3020, 3022, 3026, 3035, 3040, 3047, 3062, 3069, + 3073, 3077, 3081, 3085, 3095, 3103, 3112, 3134, 3135, 3139, + 3140, 3141, 3145, 3146, 3153, 3154, 3158, 3159, 3164, 3172, + 3174, 3188, 3191, 3218, 3219, 3222, 3223, 3231, 3239, 3247, + 3256, 3266, 3284, 3330, 3339, 3348, 3357, 3366, 3378, 3379, + 3380, 3381, 3382, 3396, 3397, 3400, 3401, 3405, 3415, 3416, + 3420, 3421, 3425, 3432, 3433, 3438, 3439, 3444, 3445, 3448, + 3449, 3450, 3453, 3454, 3457, 3458, 3459, 3460, 3461, 3462, + 3463, 3464, 3465, 3466, 3467, 3468, 3469, 3470, 3473, 3475, + 3480, 3482, 3487, 3489, 3491, 3493, 3495, 3497, 3499, 3501, + 3515, 3517, 3522, 3526, 3533, 3538, 3544, 3548, 3555, 3560, + 3567, 3572, 3580, 3584, 3590, 3594, 3603, 3614, 3615, 3619, + 3623, 3630, 3631, 3632, 3633, 3634, 3635, 3636, 3637, 3638, + 3639, 3640, 3641, 3642, 3643, 3644, 3654, 3658, 3665, 3672, + 3673, 3689, 3693, 3698, 3702, 3717, 3722, 3726, 3729, 3732, + 3733, 3734, 3737, 3744, 3745, 3746, 3756, 3770, 3771, 3775, + 3786, 3787, 3790, 3791, 3795, 3796, 3799, 3805, 3809, 3816, + 3824, 3832, 3840, 3850, 3851, 3856, 3857, 3861, 3862, 3863, + 3867, 3876, 3884, 3892, 3901, 3916, 3917, 3922, 3923, 3933, + 3934, 3938, 3939, 3943, 3944, 3947, 3963, 3971, 3979, 3989, + 3990, 3994, 3998, 4004, 4006, 4011, 4012, 4016, 4017, 4020, + 4024, 4025, 4029, 4030, 4033, 4034, 4035, 4038, 4042, 4043, + 4047, 4048, 4050, 4051, 4052, 4062, 4063, 4067, 4069, 4075, + 4076, 4080, 4081, 4084, 4095, 4098, 4109, 4113, 4117, 4129, + 4133, 4142, 4149, 4187, 4191, 4195, 4199, 4203, 4207, 4211, + 4217, 4234, 4235, 4236, 4239, 4240, 4241, 4244, 4245, 4246, + 4249, 4250, 4253, 4255, 4260, 4261, 4264, 4268, 4269, 7, + 18, 19, 23, 24, 25, 26, 27, 28, 7, 26, + 50, 73, 80, 85, 86, 87, 88, 8, 33, 62, + 66, 67, 72, 73, 78, 79, 83, 84, 89, 90, + 7, 16, 25, 34, 43, 52, 5, 12, 22, 23, + 7, 15, 26, 27, 30, 31, 32, 33, 34, 35, + 36, 37, 38, 39, 7, 19, 33, 9, 16, 26, + 33, 44, 45, 50, 51, 52, 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, 91, 92, 93, + 98, 99, 104, 108, 116, 117, 122, 123, 124, 130, + 135, 143, 144, 10, 16, 22, 28, 34, 44, 45, + 53, 64, 76, 84, 95, 101, 105, 109, 124, 131, + 132, 133, 137, 138, 7, 17, 26, 35, 46, 47, + 49, 50, 53, 54, 55, 8, 22, 36, 48, 56, + 70, 71, 72, 73, 74, 87, 88, 93, 94, 98, + 99, 7, 18, 31, 35, 42, 53, 54, 60, 61, + 9, 19, 7, 16, 28, 35, 42, 51, 52, 56, + 57, 2, 7, 12, 17, 22, 31, 38, 48, 49, + 56, 3, 10, 17, 24, 31, 38, 45, 52, 61, + 61, 63, 63, 65, 65, 67, 68, 6, 8, 21, + 34, 47, 65, 87, 88, 89, 90, 11, 24, 37, + 54, 55, 56, 61, 74, 74, 74, 74, 74, 74, 74, 74, 74, 74, 74, 74, 74, 74, 74, 74, 74, 74, 74, 74, 74, 74, 74, 74, 74, 74, 74, 74, 74, 74, 74, 74, 74, 74, 74, 74, @@ -2799,18 +2799,19 @@ static const yytype_uint16 yyrline[] = 74, 74, 74, 74, 74, 74, 74, 74, 74, 74, 74, 74, 74, 74, 74, 74, 74, 74, 74, 74, 74, 74, 74, 74, 74, 74, 74, 74, 74, 74, - 74, 74, 74, 74, 74, 74, 74, 75, 75, 75, + 74, 74, 74, 74, 74, 74, 74, 74, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, - 75, 76, 76, 76, 76, 76, 76, 76, 76, 76, + 75, 75, 76, 76, 76, 76, 76, 76, 76, 76, + 76, 76, 76, 76, 76, 76, 76, 76, 76, 76, 76, 76, 76, 76, 76, 76, 76, 76, 76, 76, - 76, 76, 76, 76, 76, 76, 76, 76, 76, 77, 77, 77, 77, 77, 77, 77, 77, 77, 77, 77, 77, 77, 77, 77, 77, 77, 77, 77, 77, 77, - 77, 77, 77, 77, 77, 77, 77, 77, 78, 78, + 77, 77, 77, 77, 77, 77, 77, 77, 77, 78, + 78, 78, 78, 78, 78, 78, 78, 78, 78, 78, 78, 78, 78, 78, 78, 78, 78, 78, 78, 78, 78, 78, 78, 78, 78, 78, 78, 78, 78, 78, 78, 78, 78, 78, 78, 78, 78, 78, 78, 78, @@ -2818,18 +2819,17 @@ static const yytype_uint16 yyrline[] = 78, 78, 78, 78, 78, 78, 78, 78, 78, 78, 78, 78, 78, 78, 78, 78, 78, 78, 78, 78, 78, 78, 78, 78, 78, 78, 78, 78, 78, 78, - 78, 78, 78, 78, 78, 78, 78, 78, 78, 79, 79, 79, 79, 79, 79, 79, 79, 79, 79, 79, 79, 79, 79, 79, 79, 79, 79, 79, 79, 79, 79, 79, 79, 79, 79, 79, 79, 79, 79, 79, - 79, 80, 80, 80, 80, 80, 80, 80, 80, 80, + 79, 79, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, - 80, 80, 80, 80, 80, 80 + 80, 80, 80, 80, 80, 80, 80 }; #endif @@ -3231,57 +3231,57 @@ static const yytype_uint16 yyr1[] = 825, 825, 826, 826, 827, 827, 827, 827, 827, 827, 828, 828, 828, 829, 829, 829, 830, 830, 830, 830, 830, 830, 830, 830, 830, 830, 831, 832, 833, 834, - 834, 834, 834, 834, 834, 835, 835, 836, 836, 837, + 834, 834, 834, 834, 834, 834, 835, 835, 836, 836, 837, 837, 837, 837, 837, 837, 837, 837, 837, 837, - 837, 837, 837, 838, 839, 839, 840, 840, 841, 841, - 841, 842, 842, 843, 843, 844, 844, 845, 846, 846, - 846, 847, 848, 848, 849, 849, 850, 850, 850, 850, - 851, 851, 852, 852, 852, 852, 852, 853, 853, 853, - 853, 853, 854, 854, 855, 855, 856, 857, 857, 858, - 858, 859, 860, 860, 861, 861, 862, 862, 863, 863, - 863, 864, 864, 865, 865, 865, 865, 865, 865, 865, - 865, 865, 865, 865, 865, 865, 865, 866, 866, 867, - 867, 868, 868, 868, 868, 868, 868, 868, 868, 869, - 869, 870, 870, 871, 871, 872, 872, 873, 873, 874, - 874, 875, 875, 876, 876, 876, 877, 877, 878, 878, - 879, 879, 879, 879, 879, 879, 879, 879, 879, 879, - 879, 879, 879, 879, 879, 880, 880, 881, 882, 882, - 883, 883, 883, 883, 883, 883, 884, 885, 886, 886, - 886, 887, 887, 887, 887, 888, 889, 889, 890, 891, - 891, 892, 892, 893, 893, 894, 895, 895, 550, 550, - 550, 550, 896, 896, 897, 897, 898, 898, 898, 899, - 899, 899, 899, 899, 900, 900, 901, 901, 902, 902, - 903, 903, 904, 904, 905, 905, 905, 905, 906, 906, - 907, 907, 908, 908, 909, 909, 910, 910, 911, 912, - 912, 913, 913, 914, 914, 914, 915, 916, 916, 917, - 917, 918, 918, 918, 919, 919, 920, 920, 921, 921, - 922, 922, 923, 924, 924, 925, 925, 925, 925, 925, - 925, 925, 925, 925, 925, 925, 925, 925, 925, 926, - 927, 927, 927, 928, 928, 928, 929, 929, 929, 930, - 930, 931, 931, 932, 932, 933, 934, 934, 935, 936, - 936, 937, 937, 937, 937, 937, 937, 938, 938, 938, - 939, 939, 940, 940, 940, 940, 941, 941, 942, 943, - 943, 944, 944, 945, 945, 946, 946, 947, 947, 948, - 948, 948, 948, 948, 948, 949, 949, 950, 950, 951, - 951, 952, 952, 953, 953, 953, 953, 953, 953, 953, - 953, 953, 953, 954, 954, 955, 956, 956, 956, 956, - 957, 957, 958, 958, 958, 959, 959, 959, 959, 959, + 837, 837, 837, 837, 838, 839, 839, 840, 840, 841, + 841, 841, 842, 842, 843, 843, 844, 844, 845, 846, + 846, 846, 847, 848, 848, 849, 849, 850, 850, 850, + 850, 851, 851, 852, 852, 852, 852, 852, 853, 853, + 853, 853, 853, 854, 854, 855, 855, 856, 857, 857, + 858, 858, 859, 860, 860, 861, 861, 862, 862, 863, + 863, 863, 864, 864, 865, 865, 865, 865, 865, 865, + 865, 865, 865, 865, 865, 865, 865, 865, 866, 866, + 867, 867, 868, 868, 868, 868, 868, 868, 868, 868, + 869, 869, 870, 870, 871, 871, 872, 872, 873, 873, + 874, 874, 875, 875, 876, 876, 876, 877, 877, 878, + 878, 879, 879, 879, 879, 879, 879, 879, 879, 879, + 879, 879, 879, 879, 879, 879, 880, 880, 881, 882, + 882, 883, 883, 883, 883, 883, 883, 884, 885, 886, + 886, 886, 887, 887, 887, 887, 888, 889, 889, 890, + 891, 891, 892, 892, 893, 893, 894, 895, 895, 550, + 550, 550, 550, 896, 896, 897, 897, 898, 898, 898, + 899, 899, 899, 899, 899, 900, 900, 901, 901, 902, + 902, 903, 903, 904, 904, 905, 905, 905, 905, 906, + 906, 907, 907, 908, 908, 909, 909, 910, 910, 911, + 912, 912, 913, 913, 914, 914, 914, 915, 916, 916, + 917, 917, 918, 918, 918, 919, 919, 920, 920, 921, + 921, 922, 922, 923, 924, 924, 925, 925, 925, 925, + 925, 925, 925, 925, 925, 925, 925, 925, 925, 925, + 926, 927, 927, 927, 928, 928, 928, 929, 929, 929, + 930, 930, 931, 931, 932, 932, 933, 934, 934, 935, + 936, 936, 937, 937, 937, 937, 937, 937, 938, 938, + 938, 939, 939, 940, 940, 940, 940, 941, 941, 942, + 943, 943, 944, 944, 945, 945, 946, 946, 947, 947, + 948, 948, 948, 948, 948, 948, 949, 949, 950, 950, + 951, 951, 952, 952, 953, 953, 953, 953, 953, 953, + 953, 953, 953, 953, 954, 954, 955, 956, 956, 956, + 956, 957, 957, 958, 958, 958, 959, 959, 959, 959, 959, 959, 959, 959, 959, 959, 959, 959, 959, 959, 959, 959, 959, 959, 959, 959, 959, 959, 959, 959, - 959, 959, 959, 959, 959, 959, 960, 960, 960, 961, - 961, 962, 962, 963, 963, 964, 964, 964, 964, 965, - 966, 966, 967, 967, 967, 967, 967, 968, 968, 968, - 968, 969, 969, 970, 971, 971, 971, 971, 971, 971, - 971, 972, 972, 973, 973, 973, 973, 974, 974, 975, - 975, 976, 976, 976, 977, 977, 977, 977, 977, 978, - 978, 978, 978, 978, 979, 979, 980, 980, 981, 981, - 982, 982, 983, 983, 983, 984, 984, 985, 985, 986, - 986, 987, 987, 988, 988, 988, 989, 989, 990, 990, - 991, 991, 991, 991, 991, 992, 992, 993, 993, 993, - 994, 994, 994, 994, 994, 994, 994, 994, 995, 995, - 996, 996, 997, 997, 998, 998, 999, 1000, 1000, 1000, - 1000, 1000, 1001, 1001, 1001, 1001, 1002, 1002, 1002, 1003, - 1003, 1003, 1004, 1005, 1005, 1005, 1005, 1005, 1005, 1005, + 959, 959, 959, 959, 959, 959, 959, 960, 960, 960, + 961, 961, 962, 962, 963, 963, 964, 964, 964, 964, + 965, 966, 966, 967, 967, 967, 967, 967, 968, 968, + 968, 968, 969, 969, 970, 971, 971, 971, 971, 971, + 971, 971, 972, 972, 973, 973, 973, 973, 974, 974, + 975, 975, 976, 976, 976, 977, 977, 977, 977, 977, + 978, 978, 978, 978, 978, 979, 979, 980, 980, 981, + 981, 982, 982, 983, 983, 983, 984, 984, 985, 985, + 986, 986, 987, 987, 988, 988, 988, 989, 989, 990, + 990, 991, 991, 991, 991, 991, 992, 992, 993, 993, + 993, 994, 994, 994, 994, 994, 994, 994, 994, 995, + 995, 996, 996, 997, 997, 998, 998, 999, 1000, 1000, + 1000, 1000, 1000, 1001, 1001, 1001, 1001, 1002, 1002, 1002, + 1003, 1003, 1003, 1004, 1005, 1005, 1005, 1005, 1005, 1005, 1005, 1005, 1005, 1005, 1005, 1005, 1005, 1005, 1005, 1005, 1005, 1005, 1005, 1005, 1005, 1005, 1005, 1005, 1005, 1005, 1005, 1005, 1005, 1005, 1005, 1005, 1005, 1005, 1005, 1005, @@ -3313,18 +3313,19 @@ static const yytype_uint16 yyr1[] = 1005, 1005, 1005, 1005, 1005, 1005, 1005, 1005, 1005, 1005, 1005, 1005, 1005, 1005, 1005, 1005, 1005, 1005, 1005, 1005, 1005, 1005, 1005, 1005, 1005, 1005, 1005, 1005, 1005, 1005, - 1005, 1005, 1005, 1005, 1005, 1005, 1005, 1006, 1006, 1006, + 1005, 1005, 1005, 1005, 1005, 1005, 1005, 1005, 1006, 1006, 1006, 1006, 1006, 1006, 1006, 1006, 1006, 1006, 1006, 1006, 1006, 1006, 1006, 1006, 1006, 1006, 1006, 1006, 1006, 1006, 1006, 1006, 1006, 1006, 1006, 1006, 1006, 1006, 1006, 1006, 1006, 1006, 1006, 1006, 1006, 1006, 1006, 1006, 1006, 1006, 1006, 1006, 1006, 1006, 1006, 1006, 1006, 1006, 1006, 1006, - 1006, 1007, 1007, 1007, 1007, 1007, 1007, 1007, 1007, 1007, + 1006, 1006, 1007, 1007, 1007, 1007, 1007, 1007, 1007, 1007, + 1007, 1007, 1007, 1007, 1007, 1007, 1007, 1007, 1007, 1007, 1007, 1007, 1007, 1007, 1007, 1007, 1007, 1007, 1007, 1007, - 1007, 1007, 1007, 1007, 1007, 1007, 1007, 1007, 1007, 1008, 1008, 1008, 1008, 1008, 1008, 1008, 1008, 1008, 1008, 1008, 1008, 1008, 1008, 1008, 1008, 1008, 1008, 1008, 1008, 1008, - 1008, 1008, 1008, 1008, 1008, 1008, 1008, 1008, 1009, 1009, + 1008, 1008, 1008, 1008, 1008, 1008, 1008, 1008, 1008, 1009, + 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1009, @@ -3332,18 +3333,17 @@ static const yytype_uint16 yyr1[] = 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1009, - 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1010, 1010, 1010, 1010, 1010, 1010, 1010, 1010, 1010, 1010, 1010, 1010, 1010, 1010, 1010, 1010, 1010, 1010, 1010, 1010, 1010, 1010, 1010, 1010, 1010, 1010, 1010, 1010, 1010, 1010, 1010, - 1010, 1011, 1011, 1011, 1011, 1011, 1011, 1011, 1011, 1011, + 1010, 1010, 1011, 1011, 1011, 1011, 1011, 1011, 1011, 1011, 1011, 1011, 1011, 1011, 1011, 1011, 1011, 1011, 1011, 1011, 1011, 1011, 1011, 1011, 1011, 1011, 1011, 1011, 1011, 1011, 1011, 1011, 1011, 1011, 1011, 1011, 1011, 1011, 1011, 1011, 1011, 1011, 1011, 1011, 1011, 1011, 1011, 1011, 1011, 1011, 1011, 1011, 1011, 1011, 1011, 1011, 1011, 1011, 1011, 1011, 1011, 1011, 1011, 1011, 1011, 1011, 1011, 1011, 1011, 1011, - 1011, 1011, 1011, 1011, 1011, 1011 + 1011, 1011, 1011, 1011, 1011, 1011, 1011 }; /* YYR2[YYN] -- Number of symbols composing right hand side of rule YYN. */ @@ -3454,57 +3454,58 @@ static const yytype_uint8 yyr2[] = 6, 7, 1, 2, 1, 1, 1, 2, 2, 4, 3, 1, 1, 1, 1, 2, 1, 1, 1, 1, 1, 1, 1, 2, 4, 2, 3, 3, 4, 3, - 6, 7, 9, 7, 7, 5, 1, 1, 1, 5, - 6, 6, 4, 4, 4, 4, 6, 5, 5, 5, - 4, 6, 4, 1, 7, 9, 5, 0, 5, 4, - 0, 1, 0, 2, 0, 1, 3, 3, 2, 2, - 0, 6, 1, 0, 3, 0, 3, 3, 3, 0, - 1, 4, 2, 2, 2, 2, 2, 3, 2, 2, - 3, 0, 4, 3, 1, 5, 3, 1, 3, 1, - 2, 3, 1, 3, 1, 2, 1, 0, 1, 1, + 4, 6, 7, 9, 7, 7, 5, 1, 1, 1, + 5, 6, 6, 4, 4, 4, 4, 6, 5, 5, + 5, 4, 6, 4, 1, 7, 9, 5, 0, 5, + 4, 0, 1, 0, 2, 0, 1, 3, 3, 2, + 2, 0, 6, 1, 0, 3, 0, 3, 3, 3, + 0, 1, 4, 2, 2, 2, 2, 2, 3, 2, + 2, 3, 0, 4, 3, 1, 5, 3, 1, 3, + 1, 2, 3, 1, 3, 1, 2, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 4, 1, - 4, 1, 4, 1, 2, 1, 2, 1, 2, 1, - 3, 1, 3, 1, 2, 1, 3, 1, 2, 1, - 0, 1, 3, 1, 3, 3, 1, 3, 3, 0, + 1, 1, 1, 1, 1, 1, 1, 1, 1, 4, + 1, 4, 1, 4, 1, 2, 1, 2, 1, 2, + 1, 3, 1, 3, 1, 2, 1, 3, 1, 2, + 1, 0, 1, 3, 1, 3, 3, 1, 3, 3, + 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, + 1, 1, 1, 1, 1, 1, 4, 3, 2, 3, + 0, 3, 3, 2, 2, 1, 0, 2, 2, 3, + 2, 1, 1, 3, 1, 1, 5, 1, 2, 4, + 2, 0, 1, 0, 1, 3, 1, 1, 2, 3, + 5, 7, 7, 1, 0, 0, 2, 0, 2, 3, + 3, 3, 5, 7, 7, 0, 2, 1, 0, 1, + 0, 1, 3, 1, 2, 3, 2, 1, 3, 4, + 2, 1, 3, 1, 3, 1, 2, 1, 0, 3, + 1, 3, 1, 2, 4, 2, 0, 3, 1, 3, + 1, 2, 4, 2, 0, 1, 3, 1, 3, 1, + 2, 1, 3, 1, 1, 2, 1, 1, 2, 1, + 1, 2, 7, 2, 5, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 4, 3, 2, 3, 0, - 3, 3, 2, 2, 1, 0, 2, 2, 3, 2, - 1, 1, 3, 1, 1, 5, 1, 2, 4, 2, - 0, 1, 0, 1, 3, 1, 1, 2, 3, 5, - 7, 7, 1, 0, 0, 2, 0, 2, 3, 3, - 3, 5, 7, 7, 0, 2, 1, 0, 1, 0, - 1, 3, 1, 2, 3, 2, 1, 3, 4, 2, - 1, 3, 1, 3, 1, 2, 1, 0, 3, 1, - 3, 1, 2, 4, 2, 0, 3, 1, 3, 1, - 2, 4, 2, 0, 1, 3, 1, 3, 1, 2, - 1, 3, 1, 1, 2, 1, 1, 2, 1, 1, - 2, 7, 2, 5, 3, 3, 1, 1, 1, 1, + 1, 2, 2, 3, 3, 0, 1, 1, 1, 5, + 3, 0, 1, 1, 1, 1, 1, 1, 4, 7, + 6, 2, 0, 1, 1, 1, 1, 13, 16, 1, + 2, 0, 1, 0, 1, 0, 2, 0, 1, 0, + 6, 8, 6, 8, 6, 8, 3, 2, 1, 0, + 6, 6, 1, 1, 1, 1, 1, 1, 2, 1, + 1, 1, 1, 1, 4, 6, 3, 2, 4, 3, + 5, 1, 0, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 2, 2, 3, 3, 0, 1, 1, 1, 5, 3, - 0, 1, 1, 1, 1, 1, 1, 4, 7, 6, - 2, 0, 1, 1, 1, 1, 13, 16, 1, 2, - 0, 1, 0, 1, 0, 2, 0, 1, 0, 6, - 8, 6, 8, 6, 8, 3, 2, 1, 0, 6, - 6, 1, 1, 1, 1, 1, 1, 2, 1, 1, - 1, 1, 1, 4, 6, 3, 2, 4, 3, 5, - 1, 0, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, + 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, + 2, 1, 1, 2, 3, 3, 3, 3, 1, 3, + 3, 2, 3, 3, 1, 1, 1, 3, 5, 1, + 1, 1, 1, 3, 2, 4, 6, 6, 0, 1, + 1, 1, 0, 2, 2, 4, 6, 5, 4, 6, + 1, 1, 1, 1, 1, 1, 0, 1, 3, 1, + 0, 7, 3, 1, 2, 3, 2, 0, 2, 0, + 2, 4, 5, 8, 2, 3, 5, 1, 0, 2, + 0, 2, 3, 3, 3, 3, 1, 1, 1, 2, + 3, 2, 2, 2, 2, 3, 4, 3, 1, 1, + 1, 1, 1, 1, 0, 1, 3, 2, 9, 12, + 11, 12, 14, 3, 4, 4, 0, 7, 10, 9, + 2, 3, 0, 4, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 3, 1, 1, 1, 1, 1, 1, 2, - 1, 1, 2, 3, 3, 3, 3, 1, 3, 3, - 2, 3, 3, 1, 1, 1, 3, 5, 1, 1, - 1, 1, 3, 2, 4, 6, 6, 0, 1, 1, - 1, 0, 2, 2, 4, 6, 5, 4, 6, 1, - 1, 1, 1, 1, 1, 0, 1, 3, 1, 0, - 7, 3, 1, 2, 3, 2, 0, 2, 0, 2, - 4, 5, 8, 2, 3, 5, 1, 0, 2, 0, - 2, 3, 3, 3, 3, 1, 1, 1, 2, 3, - 2, 2, 2, 2, 3, 4, 3, 1, 1, 1, - 1, 1, 1, 0, 1, 3, 2, 9, 12, 11, - 12, 14, 3, 4, 4, 0, 7, 10, 9, 2, - 3, 0, 4, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, @@ -3565,8 +3566,7 @@ static const yytype_uint8 yyr2[] = 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1 + 1, 1, 1, 1, 1, 1, 1 }; /* YYDEFACT[STATE-NAME] -- Default rule to reduce with in state @@ -3574,12084 +3574,11393 @@ static const yytype_uint8 yyr2[] = means the default is an error. */ static const yytype_uint16 yydefact[] = { - 156, 265, 0, 1434, 1433, 1507, 265, 0, 1368, 0, - 265, 501, 406, 0, 1529, 1528, 0, 208, 265, 0, - 156, 0, 1468, 0, 0, 0, 564, 567, 565, 0, - 0, 0, 265, 604, 0, 1530, 265, 0, 0, 596, - 566, 0, 1485, 0, 0, 0, 0, 0, 2, 4, + 156, 265, 0, 1435, 1434, 1508, 265, 0, 1369, 0, + 265, 501, 406, 0, 1530, 1529, 0, 208, 265, 0, + 156, 0, 1469, 0, 0, 0, 564, 567, 565, 0, + 0, 0, 265, 604, 0, 1531, 265, 0, 0, 596, + 566, 0, 1486, 0, 0, 0, 0, 0, 2, 4, 7, 21, 35, 31, 0, 20, 33, 18, 17, 38, 26, 6, 24, 37, 40, 19, 25, 15, 39, 13, 36, 540, 526, 609, 539, 0, 0, 155, 709, 547, - 34, 16, 30, 5, 11, 12, 28, 29, 27, 1391, + 34, 16, 30, 5, 11, 12, 28, 29, 27, 1392, 43, 32, 0, 41, 22, 8, 9, 23, 42, 44, - 1531, 1527, 10, 45, 14, 264, 263, 257, 0, 0, - 0, 0, 0, 1506, 0, 0, 268, 112, 1553, 1554, - 1555, 1556, 1557, 1558, 1559, 1560, 1561, 1562, 1563, 1931, - 1564, 1565, 1566, 1567, 1568, 1932, 1569, 1570, 1571, 1877, - 1878, 1933, 1879, 1880, 1572, 1573, 1574, 1575, 1576, 1577, - 1578, 1579, 1580, 1581, 1881, 1882, 1582, 1583, 1584, 1585, - 1586, 1883, 1934, 1884, 1587, 1588, 1589, 1590, 1591, 1935, - 1592, 1593, 1594, 1595, 1596, 1597, 1598, 1599, 1600, 1936, - 1601, 1602, 1603, 1604, 1605, 1606, 1607, 1608, 1609, 1610, - 1885, 1611, 1612, 1886, 1613, 1614, 1615, 1616, 1617, 1618, - 1619, 1620, 1621, 1622, 1623, 1624, 1625, 1626, 1627, 1628, - 1629, 1630, 1631, 1632, 1633, 1634, 1635, 1636, 1637, 1638, - 1639, 1887, 1640, 1641, 1642, 1643, 1644, 1645, 1888, 1646, - 1647, 1648, 1889, 1649, 1650, 1651, 1937, 1938, 1652, 1653, - 1890, 1940, 1654, 1655, 1891, 1892, 1656, 1657, 1658, 1659, - 1660, 1661, 1662, 1663, 1664, 1941, 1665, 1666, 1667, 1668, - 1669, 1670, 1671, 1672, 1673, 1674, 1675, 1676, 1942, 1893, - 1677, 1678, 1679, 1680, 1681, 1894, 1895, 1896, 1682, 1943, - 1944, 1683, 1945, 1684, 1685, 1686, 1687, 1688, 1689, 1690, - 1946, 1691, 1947, 1692, 1693, 1694, 1695, 1696, 1697, 1698, - 1699, 1897, 1700, 1701, 1702, 1703, 1704, 1705, 1706, 1707, - 1708, 1709, 1710, 1711, 1712, 1713, 1714, 1715, 1716, 1717, - 1718, 1719, 1898, 1949, 1899, 1720, 1721, 1722, 1900, 1723, - 1724, 1950, 1725, 1901, 1726, 1902, 1727, 1728, 1729, 1730, - 1731, 1732, 1733, 1734, 1735, 1736, 1903, 1951, 1737, 1952, - 1904, 1738, 1739, 1740, 1741, 1742, 1743, 1744, 1745, 1746, - 1747, 1748, 1749, 1750, 1905, 1953, 1751, 1752, 1906, 1753, - 1754, 1755, 1756, 1757, 1758, 1759, 1760, 1761, 1762, 1763, - 1764, 1765, 1766, 1907, 1767, 1768, 1769, 1770, 1771, 1772, - 1773, 1774, 1775, 1776, 1777, 1778, 1779, 1780, 1781, 1782, - 1783, 1784, 1785, 1954, 1786, 1787, 1788, 1908, 1789, 1790, - 1791, 1792, 1793, 1794, 1795, 1796, 1797, 1798, 1799, 1800, - 1801, 1802, 1803, 1804, 1805, 1806, 1807, 1909, 1808, 1809, - 1955, 1810, 1811, 1910, 1812, 1813, 1814, 1815, 1816, 1817, - 1818, 1819, 1820, 1821, 1822, 1823, 1824, 1911, 1825, 1912, - 1826, 1827, 1828, 1957, 1829, 1830, 1831, 1832, 1833, 1834, - 1913, 1914, 1835, 1836, 1915, 1837, 1916, 1838, 1839, 1917, - 1840, 1841, 1842, 1843, 1844, 1845, 1846, 1847, 1848, 1849, - 1850, 1851, 1852, 1853, 1854, 1855, 1856, 1918, 1919, 1857, - 1858, 1958, 1859, 1860, 1861, 1862, 1863, 1864, 1865, 1866, - 1867, 1868, 1869, 1870, 1871, 1872, 1920, 1921, 1922, 1923, - 1924, 1925, 1926, 1927, 1928, 1929, 1930, 1873, 1874, 1875, - 1876, 0, 1536, 0, 1293, 113, 114, 1315, 112, 1890, - 1897, 1911, 1367, 1366, 113, 0, 260, 500, 0, 0, - 0, 0, 0, 0, 210, 0, 400, 399, 0, 1357, - 405, 0, 0, 0, 116, 108, 1753, 115, 1292, 106, - 122, 2101, 2102, 2103, 2104, 1988, 2105, 2106, 2107, 2108, - 1989, 2109, 1990, 1991, 1992, 1993, 1994, 1995, 2110, 2111, - 2112, 1997, 1996, 2113, 1998, 2114, 1999, 2115, 2000, 2001, - 2116, 2117, 2002, 1607, 2003, 2004, 2118, 2119, 2120, 2121, - 2122, 2123, 2124, 2125, 2126, 2005, 2006, 2127, 2128, 2007, - 2129, 2130, 2008, 2131, 2009, 2010, 2011, 2132, 2133, 2012, - 2013, 2134, 2014, 2135, 2136, 2015, 2016, 2019, 2017, 2137, - 2018, 2138, 2020, 2021, 2022, 2139, 2140, 2023, 2024, 2141, - 2025, 2026, 2027, 2028, 2029, 2142, 2030, 2143, 2031, 2032, - 2144, 2145, 2146, 2147, 2148, 2034, 2033, 2035, 2036, 2149, - 2150, 2151, 2152, 2037, 2038, 2039, 2153, 2154, 2040, 2155, - 2156, 2041, 2042, 2157, 2043, 2044, 2158, 2045, 2046, 2159, - 2047, 2048, 2160, 2161, 2162, 2049, 2163, 2050, 2051, 2164, - 2165, 2052, 2053, 2166, 2054, 2167, 2168, 2169, 2170, 2055, - 2056, 2171, 2057, 2172, 2173, 2174, 2175, 2058, 2059, 2060, - 2061, 2062, 2063, 2064, 2065, 2066, 2067, 2068, 1503, 124, + 1532, 1528, 10, 45, 14, 264, 263, 257, 0, 0, + 0, 0, 0, 1507, 0, 0, 268, 112, 1554, 1555, + 1556, 1557, 1558, 1559, 1560, 1561, 1562, 1563, 1564, 1932, + 1565, 1566, 1567, 1568, 1569, 1933, 1570, 1571, 1572, 1878, + 1879, 1934, 1880, 1881, 1573, 1574, 1575, 1576, 1577, 1578, + 1579, 1580, 1581, 1582, 1882, 1883, 1583, 1584, 1585, 1586, + 1587, 1884, 1935, 1885, 1588, 1589, 1590, 1591, 1592, 1936, + 1593, 1594, 1595, 1596, 1597, 1598, 1599, 1600, 1601, 1937, + 1602, 1603, 1604, 1605, 1606, 1607, 1608, 1609, 1610, 1611, + 1886, 1612, 1613, 1887, 1614, 1615, 1616, 1617, 1618, 1619, + 1620, 1621, 1622, 1623, 1624, 1625, 1626, 1627, 1628, 1629, + 1630, 1631, 1632, 1633, 1634, 1635, 1636, 1637, 1638, 1639, + 1640, 1888, 1641, 1642, 1643, 1644, 1645, 1646, 1889, 1647, + 1648, 1649, 1890, 1650, 1651, 1652, 1938, 1939, 1653, 1654, + 1891, 1941, 1655, 1656, 1892, 1893, 1657, 1658, 1659, 1660, + 1661, 1662, 1663, 1664, 1665, 1942, 1666, 1667, 1668, 1669, + 1670, 1671, 1672, 1673, 1674, 1675, 1676, 1677, 1943, 1894, + 1678, 1679, 1680, 1681, 1682, 1895, 1896, 1897, 1683, 1944, + 1945, 1684, 1946, 1685, 1686, 1687, 1688, 1689, 1690, 1691, + 1947, 1692, 1948, 1693, 1694, 1695, 1696, 1697, 1698, 1699, + 1700, 1898, 1701, 1702, 1703, 1704, 1705, 1706, 1707, 1708, + 1709, 1710, 1711, 1712, 1713, 1714, 1715, 1716, 1717, 1718, + 1719, 1720, 1899, 1950, 1900, 1721, 1722, 1723, 1901, 1724, + 1725, 1951, 1726, 1902, 1727, 1903, 1728, 1729, 1730, 1731, + 1732, 1733, 1734, 1735, 1736, 1737, 1904, 1952, 1738, 1953, + 1905, 1739, 1740, 1741, 1742, 1743, 1744, 1745, 1746, 1747, + 1748, 1749, 1750, 1751, 1906, 1954, 1752, 1753, 1907, 1754, + 1755, 1756, 1757, 1758, 1759, 1760, 1761, 1762, 1763, 1764, + 1765, 1766, 1767, 1908, 1768, 1769, 1770, 1771, 1772, 1773, + 1774, 1775, 1776, 1777, 1778, 1779, 1780, 1781, 1782, 1783, + 1784, 1785, 1786, 1955, 1787, 1788, 1789, 1909, 1790, 1791, + 1792, 1793, 1794, 1795, 1796, 1797, 1798, 1799, 1800, 1801, + 1802, 1803, 1804, 1805, 1806, 1807, 1808, 1910, 1809, 1810, + 1956, 1811, 1812, 1911, 1813, 1814, 1815, 1816, 1817, 1818, + 1819, 1820, 1821, 1822, 1823, 1824, 1825, 1912, 1826, 1913, + 1827, 1828, 1829, 1958, 1830, 1831, 1832, 1833, 1834, 1835, + 1914, 1915, 1836, 1837, 1916, 1838, 1917, 1839, 1840, 1918, + 1841, 1842, 1843, 1844, 1845, 1846, 1847, 1848, 1849, 1850, + 1851, 1852, 1853, 1854, 1855, 1856, 1857, 1919, 1920, 1858, + 1859, 1959, 1860, 1861, 1862, 1863, 1864, 1865, 1866, 1867, + 1868, 1869, 1870, 1871, 1872, 1873, 1921, 1922, 1923, 1924, + 1925, 1926, 1927, 1928, 1929, 1930, 1931, 1874, 1875, 1876, + 1877, 0, 1537, 0, 1294, 113, 114, 1316, 112, 1891, + 1898, 1912, 1368, 1367, 113, 0, 260, 500, 0, 0, + 0, 0, 0, 0, 210, 0, 400, 399, 0, 1358, + 405, 0, 0, 0, 116, 108, 1754, 115, 1293, 106, + 122, 2102, 2103, 2104, 2105, 1989, 2106, 2107, 2108, 2109, + 1990, 2110, 1991, 1992, 1993, 1994, 1995, 1996, 2111, 2112, + 2113, 1998, 1997, 2114, 1999, 2115, 2000, 2116, 2001, 2002, + 2117, 2118, 2003, 1608, 2004, 2005, 2119, 2120, 2121, 2122, + 2123, 2124, 2125, 2126, 2127, 2006, 2007, 2128, 2129, 2008, + 2130, 2131, 2009, 2132, 2010, 2011, 2012, 2133, 2134, 2013, + 2014, 2135, 2015, 2136, 2137, 2016, 2017, 2020, 2018, 2138, + 2019, 2139, 2021, 2022, 2023, 2140, 2141, 2024, 2025, 2142, + 2026, 2027, 2028, 2029, 2030, 2143, 2031, 2144, 2032, 2033, + 2145, 2146, 2147, 2148, 2149, 2035, 2034, 2036, 2037, 2150, + 2151, 2152, 2153, 2038, 2039, 2040, 2154, 2155, 2041, 2156, + 2157, 2042, 2043, 2158, 2044, 2045, 2159, 2046, 2047, 2160, + 2048, 2049, 2161, 2162, 2163, 2050, 2164, 2051, 2052, 2165, + 2166, 2053, 2054, 2167, 2055, 2168, 2169, 2170, 2171, 2056, + 2057, 2172, 2058, 2173, 2174, 2175, 2176, 2059, 2060, 2061, + 2062, 2063, 2064, 2065, 2066, 2067, 2068, 2069, 1504, 124, 123, 125, 0, 424, 425, 0, 435, 0, 417, 422, 418, 0, 444, 437, 445, 426, 416, 438, 427, 415, 209, 0, 446, 432, 420, 0, 0, 0, 0, 261, - 222, 406, 0, 156, 0, 1397, 1407, 1416, 1412, 1406, - 1414, 1404, 1420, 1410, 1396, 1418, 1405, 1409, 1402, 1419, - 1400, 1417, 1415, 1403, 1411, 1395, 1399, 1386, 1391, 1423, - 1413, 1421, 1408, 1422, 1424, 1398, 1425, 1401, 0, 1368, - 0, 1883, 1934, 1888, 0, 1901, 0, 1904, 1905, 1789, - 1912, 1915, 1916, 1917, 1918, 0, 783, 115, 110, 767, - 0, 542, 0, 713, 727, 767, 772, 1057, 795, 1058, - 0, 117, 1470, 1469, 1463, 195, 1330, 1516, 1654, 1694, - 1806, 1913, 1835, 1857, 1534, 1517, 1510, 1515, 262, 603, - 601, 0, 1249, 1654, 1694, 1793, 1806, 1913, 1857, 1442, - 1447, 0, 268, 1522, 115, 110, 1521, 0, 548, 595, - 0, 269, 1484, 0, 1489, 0, 1769, 575, 578, 1324, + 222, 406, 0, 156, 0, 1398, 1408, 1417, 1413, 1407, + 1415, 1405, 1421, 1411, 1397, 1419, 1406, 1410, 1403, 1420, + 1401, 1418, 1416, 1404, 1412, 1396, 1400, 1387, 1392, 1424, + 1414, 1422, 1409, 1423, 1425, 1399, 1426, 1402, 0, 1369, + 0, 1884, 1935, 1889, 0, 1902, 0, 1905, 1906, 1790, + 1913, 1916, 1917, 1918, 1919, 0, 783, 115, 110, 767, + 0, 542, 0, 713, 727, 767, 772, 1058, 795, 1059, + 0, 117, 1471, 1470, 1464, 195, 1331, 1517, 1655, 1695, + 1807, 1914, 1836, 1858, 1535, 1518, 1511, 1516, 262, 603, + 601, 0, 1250, 1655, 1695, 1794, 1807, 1914, 1858, 1443, + 1448, 0, 268, 1523, 115, 110, 1522, 0, 548, 595, + 0, 269, 1485, 0, 1490, 0, 1770, 575, 578, 1325, 576, 540, 0, 0, 1, 156, 0, 162, 0, 599, 599, 0, 599, 0, 532, 0, 0, 540, 535, 539, - 710, 1390, 1499, 0, 1533, 1913, 1835, 1523, 1520, 1663, - 0, 0, 1663, 0, 1663, 0, 1663, 0, 0, 1509, - 0, 258, 1233, 0, 1294, 118, 0, 0, 1379, 1375, - 1380, 1376, 1381, 1374, 1373, 1382, 1378, 0, 0, 0, - 371, 404, 403, 402, 401, 406, 1663, 1341, 0, 206, - 462, 463, 0, 0, 0, 0, 0, 1352, 109, 107, - 1663, 1504, 433, 434, 0, 423, 419, 421, 0, 0, - 1663, 1319, 443, 439, 1663, 443, 1286, 1663, 0, 0, - 214, 0, 399, 1388, 1426, 2055, 1440, 0, 1441, 1431, - 1394, 1427, 1428, 156, 0, 499, 1365, 0, 0, 0, - 1179, 767, 772, 0, 0, 785, 0, 1199, 0, 1205, + 710, 1391, 1500, 0, 1534, 1914, 1836, 1524, 1521, 1664, + 0, 0, 1664, 0, 1664, 0, 1664, 0, 0, 1510, + 0, 258, 1234, 0, 1295, 118, 0, 0, 1380, 1376, + 1381, 1377, 1382, 1375, 1374, 1383, 1379, 0, 0, 0, + 371, 404, 403, 402, 401, 406, 1664, 1342, 0, 206, + 462, 463, 0, 0, 0, 0, 0, 1353, 109, 107, + 1664, 1505, 433, 434, 0, 423, 419, 421, 0, 0, + 1664, 1320, 443, 439, 1664, 443, 1287, 1664, 0, 0, + 214, 0, 399, 1389, 1427, 2056, 1441, 0, 1442, 1432, + 1395, 1428, 1429, 156, 0, 499, 1366, 0, 0, 0, + 1180, 767, 772, 0, 0, 785, 0, 1200, 0, 1206, 0, 0, 0, 767, 547, 0, 727, 784, 111, 717, 0, 765, 766, 651, 651, 604, 0, 585, 0, 651, 651, 651, 777, 0, 0, 780, 778, 0, 780, 0, 0, 0, 780, 776, 736, 0, 651, 0, 765, 768, - 651, 0, 787, 1385, 0, 0, 0, 0, 1513, 1511, - 1512, 1518, 0, 1514, 0, 0, 1296, 1298, 1299, 1147, - 1309, 1034, 0, 1878, 1879, 1880, 1222, 1881, 1882, 1884, - 1885, 1886, 992, 1627, 1887, 1307, 1889, 1891, 1892, 1894, - 1895, 1896, 1897, 1898, 1899, 0, 1308, 1902, 1732, 1907, - 1908, 1910, 1913, 1914, 1306, 1919, 0, 0, 0, 1267, - 1170, 0, 1033, 0, 0, 0, 1226, 1234, 1026, 0, + 651, 0, 787, 1386, 0, 0, 0, 0, 1514, 1512, + 1513, 1519, 0, 1515, 0, 0, 1297, 1299, 1300, 1148, + 1310, 1034, 0, 1879, 1880, 1881, 1223, 1882, 1883, 1885, + 1886, 1887, 992, 1628, 1888, 1308, 1890, 1892, 1893, 1895, + 1896, 1897, 1898, 1899, 1900, 0, 1309, 1903, 1733, 1908, + 1909, 1911, 1914, 1915, 1307, 1920, 0, 0, 0, 1268, + 1171, 0, 1033, 0, 0, 0, 1227, 1235, 1026, 0, 0, 831, 832, 853, 854, 833, 859, 860, 862, 834, - 0, 1256, 926, 1022, 1244, 1036, 1031, 1041, 1037, 1038, - 1077, 1039, 1056, 1042, 1114, 1032, 0, 1040, 1024, 1252, - 585, 1250, 0, 1025, 1295, 585, 1248, 1445, 1443, 1450, - 1444, 0, 1446, 0, 0, 0, 259, 111, 1492, 1491, - 1483, 1481, 1482, 1480, 1479, 1486, 0, 1488, 1391, 1226, - 1165, 1167, 0, 577, 0, 0, 0, 529, 528, 530, - 3, 0, 0, 0, 1644, 0, 597, 598, 0, 0, + 0, 1257, 926, 1022, 1245, 1036, 1031, 1041, 1037, 1038, + 1078, 1039, 1057, 1042, 1115, 1032, 0, 1040, 1024, 1253, + 585, 1251, 0, 1025, 1296, 585, 1249, 1446, 1444, 1451, + 1445, 0, 1447, 0, 0, 0, 259, 111, 1493, 1492, + 1484, 1482, 1483, 1481, 1480, 1487, 0, 1489, 1392, 1227, + 1166, 1168, 0, 577, 0, 0, 0, 529, 528, 530, + 3, 0, 0, 0, 1645, 0, 597, 598, 0, 0, 0, 0, 0, 0, 0, 0, 694, 624, 625, 627, 691, 695, 703, 0, 0, 0, 0, 0, 536, 0, - 1324, 1471, 1532, 1526, 1524, 0, 0, 0, 140, 140, + 1325, 1472, 1533, 1527, 1525, 0, 0, 0, 140, 140, 0, 0, 0, 0, 0, 100, 49, 93, 0, 0, 0, 0, 236, 249, 0, 0, 0, 0, 0, 246, 0, 0, 229, 51, 223, 225, 0, 140, 0, 47, - 0, 0, 0, 53, 1507, 0, 499, 266, 267, 1232, - 0, 120, 121, 119, 112, 0, 2069, 1931, 1932, 1933, - 1934, 1884, 1935, 1936, 0, 1937, 1938, 1890, 1940, 1941, - 1942, 1943, 1944, 1945, 1946, 1947, 1897, 1949, 1950, 1951, - 1952, 1953, 1954, 2095, 1955, 1911, 1957, 1917, 0, 1958, - 1049, 1173, 609, 1171, 1325, 0, 113, 1312, 0, 1377, - 0, 0, 0, 0, 497, 0, 0, 0, 0, 1337, - 0, 1663, 207, 211, 0, 1663, 202, 1663, 371, 0, - 1663, 371, 1663, 0, 1351, 1354, 0, 436, 431, 429, - 428, 430, 1663, 255, 0, 0, 1320, 441, 442, 0, - 410, 0, 0, 412, 0, 0, 219, 0, 217, 0, - 406, 156, 0, 230, 1436, 1437, 1435, 0, 0, 1430, - 1393, 233, 250, 1439, 1429, 1438, 1392, 1387, 0, 0, - 1383, 485, 0, 0, 0, 1180, 902, 901, 883, 884, - 899, 900, 885, 886, 893, 894, 904, 903, 891, 892, - 887, 888, 881, 882, 897, 898, 889, 890, 895, 896, - 879, 880, 1194, 1181, 1182, 1183, 1184, 1185, 1186, 1187, - 1188, 1189, 1190, 1191, 1192, 1193, 0, 0, 726, 723, - 0, 0, 0, 0, 0, 0, 1226, 0, 997, 1032, - 0, 0, 0, 1165, 1204, 0, 0, 0, 0, 0, - 0, 1165, 1210, 0, 0, 751, 763, 0, 644, 650, - 724, 722, 0, 1249, 714, 0, 797, 727, 725, 719, - 721, 0, 777, 0, 776, 0, 0, 779, 773, 0, - 774, 0, 0, 0, 0, 775, 0, 0, 0, 0, - 0, 718, 0, 763, 0, 720, 794, 1453, 1461, 196, - 0, 1316, 1959, 1960, 1961, 841, 1962, 870, 848, 870, - 870, 1963, 1964, 1965, 1966, 837, 837, 850, 1967, 1968, - 1969, 1970, 1971, 838, 839, 875, 1972, 1973, 1974, 1975, - 1976, 0, 0, 1977, 870, 1978, 837, 1979, 1980, 1981, - 842, 1982, 805, 1983, 0, 1984, 840, 806, 1985, 878, - 878, 1986, 0, 865, 1987, 0, 1176, 815, 823, 824, - 825, 826, 851, 852, 827, 857, 858, 828, 925, 0, - 837, 1317, 1318, 156, 1519, 1535, 0, 1170, 1043, 869, - 856, 1221, 0, 864, 863, 0, 1170, 846, 845, 844, - 1028, 0, 843, 1127, 870, 870, 868, 951, 847, 0, - 0, 0, 0, 0, 874, 0, 872, 952, 930, 931, - 0, 0, 1266, 1275, 1165, 1169, 0, 1026, 1165, 0, - 1035, 1045, 0, 1117, 1119, 0, 0, 0, 1227, 1297, - 1027, 0, 1302, 0, 0, 925, 925, 1255, 1147, 0, - 1137, 1140, 0, 0, 1144, 1145, 1146, 0, 0, 0, - 1247, 0, 1155, 1157, 0, 0, 967, 1153, 0, 970, - 0, 0, 0, 0, 1141, 1142, 1143, 1133, 1134, 1135, - 1136, 1138, 1139, 1151, 1132, 948, 0, 1023, 0, 1080, - 0, 947, 1253, 712, 0, 1300, 712, 1455, 1459, 1460, - 1454, 1458, 0, 1449, 1448, 1451, 1452, 0, 1493, 1477, - 0, 1474, 1168, 707, 579, 1288, 0, 583, 1498, 161, - 160, 0, 213, 0, 552, 551, 618, 610, 612, 618, - 0, 550, 0, 667, 668, 0, 0, 0, 0, 700, - 698, 1296, 1309, 655, 628, 654, 0, 0, 632, 0, - 659, 926, 693, 534, 622, 623, 626, 533, 0, 696, - 0, 706, 0, 571, 573, 556, 570, 568, 553, 561, - 694, 627, 0, 1500, 0, 0, 1464, 1525, 0, 0, - 0, 0, 0, 1663, 0, 0, 808, 84, 65, 323, - 139, 0, 0, 0, 0, 0, 0, 0, 92, 89, - 90, 91, 0, 0, 0, 0, 1316, 234, 235, 248, - 0, 239, 240, 237, 241, 242, 0, 0, 227, 228, - 0, 0, 0, 0, 226, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 1508, 1501, 1228, 1233, 609, 609, - 609, 0, 607, 608, 0, 0, 0, 0, 0, 484, - 369, 379, 0, 0, 0, 1341, 206, 0, 0, 0, - 0, 0, 0, 406, 1344, 1342, 1340, 1343, 1345, 1633, - 190, 0, 0, 0, 0, 0, 198, 201, 0, 368, - 342, 0, 0, 1356, 0, 0, 457, 455, 458, 447, - 460, 450, 0, 1663, 358, 1353, 0, 1505, 0, 0, - 253, 443, 1321, 0, 440, 443, 1287, 0, 443, 221, - 0, 0, 1389, 1432, 231, 251, 232, 252, 499, 494, - 524, 0, 502, 507, 482, 0, 482, 0, 504, 508, - 482, 503, 0, 482, 498, 0, 1072, 0, 1062, 0, - 0, 786, 0, 0, 1063, 999, 1000, 0, 0, 0, + 0, 0, 0, 53, 1508, 0, 499, 266, 267, 1233, + 0, 120, 121, 119, 112, 0, 2070, 1932, 1933, 1934, + 1935, 1885, 1936, 1937, 0, 1938, 1939, 1891, 1941, 1942, + 1943, 1944, 1945, 1946, 1947, 1948, 1898, 1950, 1951, 1952, + 1953, 1954, 1955, 2096, 1956, 1912, 1958, 1918, 0, 1959, + 1049, 0, 1174, 609, 1172, 1326, 0, 113, 1313, 0, + 1378, 0, 0, 0, 0, 497, 0, 0, 0, 0, + 1338, 0, 1664, 207, 211, 0, 1664, 202, 1664, 371, + 0, 1664, 371, 1664, 0, 1352, 1355, 0, 436, 431, + 429, 428, 430, 1664, 255, 0, 0, 1321, 441, 442, + 0, 410, 0, 0, 412, 0, 0, 219, 0, 217, + 0, 406, 156, 0, 230, 1437, 1438, 1436, 0, 0, + 1431, 1394, 233, 250, 1440, 1430, 1439, 1393, 1388, 0, + 0, 1384, 485, 0, 0, 0, 1181, 902, 901, 883, + 884, 899, 900, 885, 886, 893, 894, 904, 903, 891, + 892, 887, 888, 881, 882, 897, 898, 889, 890, 895, + 896, 879, 880, 1195, 1182, 1183, 1184, 1185, 1186, 1187, + 1188, 1189, 1190, 1191, 1192, 1193, 1194, 0, 0, 726, + 723, 0, 0, 0, 0, 0, 0, 1227, 0, 997, + 1032, 0, 0, 0, 1166, 1205, 0, 0, 0, 0, + 0, 0, 1166, 1211, 0, 0, 751, 763, 0, 644, + 650, 724, 722, 0, 1250, 714, 0, 797, 727, 725, + 719, 721, 0, 777, 0, 776, 0, 0, 779, 773, + 0, 774, 0, 0, 0, 0, 775, 0, 0, 0, + 0, 0, 718, 0, 763, 0, 720, 794, 1454, 1462, + 196, 0, 1317, 1960, 1961, 1962, 841, 1963, 870, 848, + 870, 870, 1964, 1965, 1966, 1967, 837, 837, 850, 1968, + 1969, 1970, 1971, 1972, 838, 839, 875, 1973, 1974, 1975, + 1976, 1977, 0, 0, 1978, 870, 1979, 837, 1980, 1981, + 1982, 842, 1983, 805, 1984, 0, 1985, 840, 806, 1986, + 878, 878, 1987, 0, 865, 1988, 0, 1177, 815, 823, + 824, 825, 826, 851, 852, 827, 857, 858, 828, 925, + 0, 837, 1318, 1319, 156, 1520, 1536, 0, 1171, 1043, + 869, 856, 1222, 0, 864, 863, 0, 1171, 846, 845, + 844, 1028, 0, 843, 1128, 870, 870, 868, 951, 847, + 0, 0, 0, 0, 0, 874, 0, 872, 952, 930, + 931, 0, 0, 1267, 1276, 1166, 1170, 0, 1026, 1166, + 0, 1035, 1045, 0, 1118, 1120, 0, 0, 0, 1228, + 1298, 1027, 0, 1303, 0, 0, 925, 925, 1256, 1148, + 0, 1138, 1141, 0, 0, 1145, 1146, 1147, 0, 0, + 0, 1248, 0, 1156, 1158, 0, 0, 967, 1154, 0, + 970, 0, 0, 0, 0, 1142, 1143, 1144, 1134, 1135, + 1136, 1137, 1139, 1140, 1152, 1133, 948, 0, 1023, 0, + 1081, 0, 947, 1254, 712, 0, 1301, 712, 1456, 1460, + 1461, 1455, 1459, 0, 1450, 1449, 1452, 1453, 0, 1494, + 1478, 0, 1475, 1169, 707, 579, 1289, 0, 583, 1499, + 161, 160, 0, 213, 0, 552, 551, 618, 610, 612, + 618, 0, 550, 0, 667, 668, 0, 0, 0, 0, + 700, 698, 1297, 1310, 655, 628, 654, 0, 0, 632, + 0, 659, 926, 693, 534, 622, 623, 626, 533, 0, + 696, 0, 706, 0, 571, 573, 556, 570, 568, 553, + 561, 694, 627, 0, 1501, 0, 0, 1465, 1526, 0, + 0, 0, 0, 0, 1664, 0, 0, 808, 84, 65, + 323, 139, 0, 0, 0, 0, 0, 0, 0, 92, + 89, 90, 91, 0, 0, 0, 0, 1317, 234, 235, + 248, 0, 239, 240, 237, 241, 242, 0, 0, 227, + 228, 0, 0, 0, 0, 226, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 1509, 1502, 1229, 1234, 609, + 609, 609, 1050, 0, 607, 608, 0, 0, 0, 0, + 0, 484, 369, 379, 0, 0, 0, 1342, 206, 0, + 0, 0, 0, 0, 0, 406, 1345, 1343, 1341, 1344, + 1346, 1634, 190, 0, 0, 0, 0, 0, 198, 201, + 0, 368, 342, 0, 0, 1357, 0, 0, 457, 455, + 458, 447, 460, 450, 0, 1664, 358, 1354, 0, 1506, + 0, 0, 253, 443, 1322, 0, 440, 443, 1288, 0, + 443, 221, 0, 0, 1390, 1433, 231, 251, 232, 252, + 499, 494, 524, 0, 502, 507, 482, 0, 482, 0, + 504, 508, 482, 503, 0, 482, 498, 0, 1073, 0, + 1063, 0, 0, 786, 0, 0, 1064, 999, 1000, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 1017, 1016, 1065, + 790, 0, 793, 0, 0, 1203, 1204, 0, 1066, 0, + 0, 1210, 0, 0, 0, 1071, 0, 728, 0, 0, + 634, 635, 643, 639, 646, 0, 649, 636, 585, 541, + 1655, 1695, 0, 596, 596, 596, 594, 584, 0, 671, + 729, 0, 0, 0, 752, 0, 0, 754, 756, 0, + 0, 759, 0, 735, 734, 0, 0, 0, 0, 798, + 0, 1293, 0, 0, 197, 0, 0, 0, 823, 0, + 0, 0, 813, 809, 0, 905, 906, 907, 908, 909, + 910, 911, 912, 913, 914, 915, 916, 917, 829, 1330, + 0, 835, 1333, 0, 1334, 1335, 1332, 1329, 1336, 1337, + 0, 0, 0, 0, 1221, 1217, 0, 0, 0, 0, + 1123, 1125, 1127, 0, 867, 866, 1132, 1138, 1141, 1145, + 1146, 1147, 1142, 1143, 1144, 1134, 1135, 1136, 1137, 1139, + 1140, 0, 1160, 0, 1114, 0, 0, 0, 0, 0, + 0, 0, 1261, 1260, 0, 1284, 0, 1046, 1030, 0, + 0, 1121, 1047, 1268, 1258, 1236, 0, 0, 0, 1306, + 1305, 927, 936, 939, 971, 972, 943, 944, 945, 949, + 1328, 1327, 1255, 0, 1247, 0, 0, 928, 953, 958, + 0, 1212, 1215, 988, 1214, 0, 976, 0, 966, 0, + 974, 978, 954, 969, 0, 950, 0, 1248, 1157, 1159, + 0, 1155, 0, 940, 941, 942, 932, 933, 934, 935, + 937, 938, 946, 1131, 1129, 1130, 0, 1234, 0, 1246, + 0, 0, 1083, 0, 0, 973, 1252, 0, 797, 609, + 797, 0, 925, 1495, 1325, 1488, 1325, 1477, 1167, 1290, + 1324, 581, 0, 0, 0, 1497, 147, 151, 0, 1235, + 181, 183, 712, 0, 616, 617, 621, 0, 0, 621, + 600, 549, 1909, 1790, 0, 0, 0, 0, 660, 701, + 0, 692, 657, 658, 0, 656, 1297, 661, 1296, 662, + 665, 666, 633, 1285, 702, 704, 0, 697, 0, 1291, + 555, 574, 0, 0, 0, 0, 0, 538, 537, 708, + 1472, 1472, 1474, 1473, 0, 50, 0, 1664, 67, 0, + 0, 0, 0, 0, 0, 273, 0, 373, 273, 105, + 1664, 443, 1664, 443, 1558, 1629, 1808, 0, 63, 347, + 96, 0, 133, 376, 0, 332, 86, 101, 126, 0, + 0, 52, 224, 238, 243, 129, 247, 244, 1362, 245, + 140, 0, 48, 0, 127, 0, 1360, 0, 0, 54, + 131, 1364, 1510, 0, 1233, 0, 607, 607, 607, 0, + 1173, 0, 0, 0, 1175, 1176, 966, 1372, 1371, 1373, + 1370, 470, 483, 0, 370, 0, 496, 473, 474, 484, + 1340, 211, 0, 202, 371, 0, 371, 0, 1342, 0, + 0, 192, 188, 206, 212, 0, 0, 0, 0, 0, + 369, 361, 359, 392, 0, 366, 360, 0, 0, 318, + 0, 1552, 0, 0, 0, 0, 464, 0, 0, 0, + 0, 0, 0, 255, 256, 409, 1323, 411, 0, 413, + 220, 218, 1385, 2026, 490, 1171, 0, 488, 495, 489, + 492, 493, 487, 486, 0, 481, 0, 517, 0, 0, + 0, 0, 0, 0, 0, 0, 1060, 1179, 0, 1198, + 1197, 998, 1005, 1008, 1012, 1013, 1014, 1199, 0, 0, + 0, 1009, 1010, 1011, 1001, 1002, 1003, 1004, 1006, 1007, + 1015, 795, 0, 0, 789, 1208, 1207, 1201, 1202, 0, + 1068, 1069, 1070, 1209, 0, 0, 764, 638, 640, 637, + 0, 0, 797, 596, 596, 596, 596, 593, 0, 0, + 0, 796, 0, 688, 760, 758, 0, 782, 0, 755, + 0, 761, 0, 746, 0, 753, 802, 769, 0, 0, + 771, 1463, 819, 0, 814, 810, 0, 0, 0, 820, + 0, 0, 0, 0, 0, 0, 0, 1178, 0, 602, + 1044, 0, 0, 0, 1218, 0, 994, 836, 849, 0, + 1126, 1048, 0, 1149, 1113, 877, 876, 878, 878, 0, + 1263, 1265, 0, 0, 0, 0, 1275, 0, 995, 1226, + 0, 1074, 1224, 1167, 1117, 1119, 1276, 1029, 861, 925, + 0, 0, 0, 0, 0, 0, 0, 977, 968, 0, + 975, 979, 0, 0, 0, 962, 0, 0, 960, 989, + 956, 0, 0, 990, 1233, 0, 1237, 0, 0, 1082, + 1091, 715, 711, 671, 607, 671, 0, 1457, 1479, 1476, + 582, 156, 1498, 0, 170, 0, 0, 0, 0, 173, + 187, 184, 1497, 0, 0, 611, 613, 0, 1150, 621, + 615, 664, 663, 0, 631, 699, 629, 0, 705, 0, + 572, 0, 558, 0, 738, 0, 0, 1466, 1467, 0, + 0, 0, 322, 0, 0, 0, 273, 0, 381, 0, + 388, 0, 0, 373, 354, 85, 0, 0, 0, 59, + 104, 77, 69, 55, 83, 0, 0, 88, 0, 81, + 98, 99, 97, 102, 0, 283, 308, 0, 0, 319, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 1017, 1016, 1064, 790, 0, - 793, 0, 0, 1202, 1203, 0, 1065, 0, 0, 1209, - 0, 0, 0, 1070, 0, 728, 0, 0, 634, 635, - 643, 639, 646, 0, 649, 636, 585, 541, 1654, 1694, - 0, 596, 596, 596, 594, 584, 0, 671, 729, 0, - 0, 0, 752, 0, 0, 754, 756, 0, 0, 759, - 0, 735, 734, 0, 0, 0, 0, 798, 0, 1292, - 0, 0, 197, 0, 0, 0, 823, 0, 0, 0, - 813, 809, 0, 905, 906, 907, 908, 909, 910, 911, - 912, 913, 914, 915, 916, 917, 829, 1329, 0, 835, - 1332, 0, 1333, 1334, 1331, 1328, 1335, 1336, 0, 0, - 0, 0, 1220, 1216, 0, 0, 0, 0, 1122, 1124, - 1126, 0, 867, 866, 1131, 1137, 1140, 1144, 1145, 1146, - 1141, 1142, 1143, 1133, 1134, 1135, 1136, 1138, 1139, 0, - 1159, 0, 1113, 0, 0, 0, 0, 0, 0, 0, - 1260, 1259, 0, 1283, 0, 1046, 1030, 0, 0, 1120, - 1047, 1267, 1257, 1235, 0, 0, 0, 1305, 1304, 927, - 936, 939, 971, 972, 943, 944, 945, 949, 1327, 1326, - 1254, 0, 1246, 0, 0, 928, 953, 958, 0, 1211, - 1214, 988, 1213, 0, 976, 0, 966, 0, 974, 978, - 954, 969, 0, 950, 0, 1247, 1156, 1158, 0, 1154, - 0, 940, 941, 942, 932, 933, 934, 935, 937, 938, - 946, 1130, 1128, 1129, 0, 1233, 0, 1245, 0, 0, - 1082, 0, 0, 973, 1251, 0, 797, 609, 797, 0, - 925, 1494, 1324, 1487, 1324, 1476, 1166, 1289, 1323, 581, - 0, 0, 0, 1496, 147, 151, 0, 1234, 181, 183, - 712, 0, 616, 617, 621, 0, 0, 621, 600, 549, - 1908, 1789, 0, 0, 0, 0, 660, 701, 0, 692, - 657, 658, 0, 656, 1296, 661, 1295, 662, 665, 666, - 633, 1284, 702, 704, 0, 697, 0, 1290, 555, 574, - 0, 0, 0, 0, 0, 538, 537, 708, 1471, 1471, - 1473, 1472, 0, 50, 0, 1663, 67, 0, 0, 0, - 0, 0, 0, 273, 0, 373, 273, 105, 1663, 443, - 1663, 443, 1557, 1628, 1807, 0, 63, 347, 96, 0, - 133, 376, 0, 332, 86, 101, 126, 0, 0, 52, - 224, 238, 243, 129, 247, 244, 1361, 245, 140, 0, - 48, 0, 127, 0, 1359, 0, 0, 54, 131, 1363, - 1509, 0, 1232, 0, 607, 607, 607, 0, 1172, 0, - 0, 0, 1174, 1175, 966, 1371, 1370, 1372, 1369, 470, - 483, 0, 370, 0, 496, 473, 474, 484, 1339, 211, - 0, 202, 371, 0, 371, 0, 1341, 0, 0, 192, - 188, 206, 212, 0, 0, 0, 0, 0, 369, 361, - 359, 392, 0, 366, 360, 0, 0, 318, 0, 1551, - 0, 0, 0, 0, 464, 0, 0, 0, 0, 0, - 0, 255, 256, 409, 1322, 411, 0, 413, 220, 218, - 1384, 2025, 490, 1170, 0, 488, 495, 489, 492, 493, - 487, 486, 0, 481, 0, 517, 0, 0, 0, 0, - 0, 0, 0, 0, 1059, 1178, 0, 1197, 1196, 998, - 1005, 1008, 1012, 1013, 1014, 1198, 0, 0, 0, 1009, - 1010, 1011, 1001, 1002, 1003, 1004, 1006, 1007, 1015, 795, - 0, 0, 789, 1207, 1206, 1200, 1201, 0, 1067, 1068, - 1069, 1208, 0, 0, 764, 638, 640, 637, 0, 0, - 797, 596, 596, 596, 596, 593, 0, 0, 0, 796, - 0, 688, 760, 758, 0, 782, 0, 755, 0, 761, - 0, 746, 0, 753, 802, 769, 0, 0, 771, 1462, - 819, 0, 814, 810, 0, 0, 0, 820, 0, 0, - 0, 0, 0, 0, 0, 1177, 0, 602, 1044, 0, - 0, 0, 1217, 0, 994, 836, 849, 0, 1125, 1048, - 0, 1148, 1112, 877, 876, 878, 878, 0, 1262, 1264, - 0, 0, 0, 0, 1274, 0, 995, 1225, 0, 1073, - 1223, 1166, 1116, 1118, 1275, 1029, 861, 925, 0, 0, - 0, 0, 0, 0, 0, 977, 968, 0, 975, 979, - 0, 0, 0, 962, 0, 0, 960, 989, 956, 0, - 0, 990, 1232, 0, 1236, 0, 0, 1081, 1090, 715, - 711, 671, 607, 671, 0, 1456, 1478, 1475, 582, 156, - 1497, 0, 170, 0, 0, 0, 0, 173, 187, 184, - 1496, 0, 0, 611, 613, 0, 1149, 621, 615, 664, - 663, 0, 631, 699, 629, 0, 705, 0, 572, 0, - 558, 0, 738, 0, 0, 1465, 1466, 0, 0, 0, - 322, 0, 0, 0, 273, 0, 381, 0, 388, 0, - 0, 373, 354, 85, 0, 0, 0, 59, 104, 77, - 69, 55, 83, 0, 0, 88, 0, 81, 98, 99, - 97, 102, 0, 283, 308, 0, 0, 319, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 499, - 1233, 1229, 1233, 0, 0, 0, 609, 605, 606, 1050, - 0, 469, 523, 520, 521, 519, 229, 380, 0, 0, - 0, 200, 368, 0, 1356, 449, 452, 1338, 406, 0, - 193, 0, 191, 211, 0, 0, 202, 371, 0, 346, - 342, 367, 340, 339, 341, 0, 1552, 222, 0, 1546, - 371, 1355, 0, 0, 465, 456, 0, 461, 0, 0, - 459, 0, 1350, 254, 443, 0, 477, 518, 525, 505, - 510, 0, 516, 512, 511, 506, 514, 513, 509, 1060, - 1071, 1195, 0, 0, 0, 0, 788, 791, 0, 1066, - 1061, 762, 0, 0, 671, 0, 0, 0, 0, 587, - 586, 592, 0, 0, 1084, 757, 0, 0, 0, 744, - 733, 739, 740, 0, 0, 0, 800, 799, 770, 823, - 0, 803, 823, 0, 823, 0, 821, 0, 830, 918, - 919, 920, 921, 922, 923, 924, 855, 0, 1219, 1215, - 1121, 1123, 1160, 873, 871, 993, 1265, 1258, 1261, 1165, - 1269, 1271, 0, 0, 0, 0, 1282, 0, 0, 1115, - 1283, 1303, 929, 0, 0, 959, 1212, 980, 0, 0, - 0, 955, 1148, 0, 0, 0, 0, 0, 964, 0, - 1240, 1233, 0, 1239, 0, 0, 0, 0, 1055, 716, - 688, 0, 688, 0, 0, 1495, 0, 1490, 148, 149, - 150, 0, 0, 0, 165, 142, 0, 0, 182, 170, - 158, 619, 620, 0, 614, 630, 1285, 1291, 557, 0, - 1026, 0, 0, 554, 0, 134, 273, 0, 0, 66, - 0, 390, 334, 382, 365, 349, 0, 0, 0, 274, - 0, 407, 0, 0, 355, 0, 0, 0, 0, 335, - 0, 0, 294, 0, 0, 365, 0, 372, 290, 291, - 0, 58, 78, 0, 74, 0, 103, 0, 0, 0, - 0, 0, 61, 73, 0, 56, 808, 443, 443, 64, - 1316, 1959, 1960, 1961, 1962, 1963, 1964, 1965, 1966, 1967, - 1968, 2079, 1969, 1970, 1971, 1972, 1973, 1974, 1975, 1976, - 2088, 1977, 280, 1978, 1732, 1979, 1980, 1981, 1982, 1983, - 0, 1984, 806, 1985, 1986, 2167, 1987, 1133, 1134, 279, - 278, 375, 275, 383, 277, 0, 1317, 276, 378, 333, - 130, 1362, 0, 128, 0, 1360, 137, 135, 132, 1364, - 1502, 0, 0, 1053, 1054, 1051, 607, 0, 0, 0, - 499, 476, 0, 0, 0, 1551, 0, 0, 1663, 0, - 189, 0, 0, 203, 1356, 199, 368, 0, 398, 318, - 393, 0, 1551, 1549, 0, 1356, 1545, 448, 451, 0, - 0, 540, 453, 0, 0, 0, 414, 491, 0, 515, - 1018, 0, 0, 0, 0, 647, 0, 653, 688, 591, - 590, 589, 588, 670, 1602, 1891, 1788, 0, 674, 669, - 672, 677, 679, 678, 680, 676, 687, 0, 690, 781, - 1161, 1163, 0, 0, 0, 0, 745, 747, 0, 749, - 0, 801, 817, 0, 818, 0, 816, 811, 822, 1218, - 1263, 1272, 1273, 1268, 1277, 1279, 0, 0, 0, 926, - 1224, 996, 986, 984, 981, 0, 982, 963, 0, 0, - 961, 957, 0, 991, 0, 0, 1237, 0, 1076, 0, - 1079, 1093, 1089, 1088, 1084, 1050, 1084, 1457, 580, 169, - 146, 172, 171, 0, 1234, 179, 0, 0, 170, 0, - 174, 466, 0, 0, 569, 737, 562, 563, 0, 386, - 68, 0, 365, 0, 273, 351, 350, 353, 348, 352, - 0, 408, 0, 0, 292, 0, 299, 337, 338, 336, - 293, 365, 371, 295, 0, 0, 0, 70, 60, 57, - 62, 71, 0, 0, 72, 75, 802, 807, 87, 80, - 1316, 2088, 2097, 0, 0, 0, 0, 0, 1231, 1230, - 0, 472, 471, 522, 468, 479, 229, 0, 0, 0, - 342, 1548, 0, 0, 0, 368, 194, 0, 0, 0, - 0, 1551, 0, 0, 270, 0, 315, 0, 215, 1550, - 0, 0, 1537, 0, 0, 1348, 1349, 0, 478, 1019, - 0, 1020, 792, 0, 0, 645, 1084, 0, 0, 0, - 681, 675, 0, 1083, 1085, 0, 642, 1164, 741, 0, - 743, 0, 767, 0, 767, 750, 812, 804, 1270, 1280, - 1281, 1276, 1074, 0, 983, 987, 985, 965, 1233, 1241, - 1233, 1238, 1078, 1092, 1095, 690, 1301, 690, 0, 0, - 157, 0, 0, 154, 141, 159, 1150, 559, 560, 0, - 273, 0, 364, 387, 304, 282, 0, 0, 0, 289, - 296, 397, 298, 0, 79, 95, 0, 0, 377, 138, - 136, 1052, 499, 0, 205, 1356, 318, 1545, 0, 0, - 0, 0, 342, 222, 1547, 331, 324, 325, 326, 327, - 328, 329, 330, 345, 344, 316, 317, 0, 0, 0, - 0, 454, 1350, 0, 176, 185, 0, 176, 1021, 648, - 0, 690, 0, 0, 0, 673, 0, 0, 689, 0, - 545, 1162, 0, 732, 730, 0, 731, 1278, 0, 0, - 0, 0, 609, 642, 642, 143, 0, 144, 180, 0, - 0, 0, 371, 389, 363, 0, 356, 302, 301, 303, - 307, 0, 305, 0, 321, 0, 314, 282, 0, 82, - 0, 384, 467, 475, 0, 272, 1539, 368, 0, 204, - 1545, 318, 1551, 1545, 0, 1542, 0, 0, 0, 0, - 178, 1356, 0, 178, 0, 642, 683, 0, 682, 1087, - 1086, 644, 742, 0, 1075, 1243, 1242, 0, 1099, 544, - 543, 0, 0, 0, 0, 397, 0, 343, 0, 0, - 304, 0, 297, 394, 395, 396, 0, 310, 300, 311, - 76, 94, 385, 0, 368, 1540, 271, 216, 1538, 1543, - 1544, 0, 176, 175, 618, 177, 797, 186, 618, 652, - 546, 684, 641, 748, 1094, 0, 0, 0, 0, 0, - 153, 797, 164, 0, 314, 362, 357, 281, 306, 320, - 0, 0, 0, 312, 0, 313, 1545, 0, 178, 621, - 1346, 621, 1877, 1603, 1842, 0, 1111, 1100, 1111, 1111, - 1091, 145, 152, 0, 273, 286, 0, 285, 0, 374, - 309, 1541, 1356, 618, 166, 167, 0, 1104, 1103, 1102, - 1106, 1105, 0, 1098, 1096, 1097, 797, 391, 284, 288, - 287, 797, 621, 0, 0, 1108, 0, 1109, 163, 1347, - 168, 1101, 1107, 1110 + 0, 499, 1234, 1230, 1234, 0, 0, 0, 609, 605, + 606, 1051, 0, 469, 523, 520, 521, 519, 229, 380, + 0, 0, 0, 200, 368, 0, 1357, 449, 452, 1339, + 406, 0, 193, 0, 191, 211, 0, 0, 202, 371, + 0, 346, 342, 367, 340, 339, 341, 0, 1553, 222, + 0, 1547, 371, 1356, 0, 0, 465, 456, 0, 461, + 0, 0, 459, 0, 1351, 254, 443, 0, 477, 518, + 525, 505, 510, 0, 516, 512, 511, 506, 514, 513, + 509, 1061, 1072, 1196, 0, 0, 0, 0, 788, 791, + 0, 1067, 1062, 762, 0, 0, 671, 0, 0, 0, + 0, 587, 586, 592, 0, 0, 1085, 757, 0, 0, + 0, 744, 733, 739, 740, 0, 0, 0, 800, 799, + 770, 823, 0, 803, 823, 0, 823, 0, 821, 0, + 830, 918, 919, 920, 921, 922, 923, 924, 855, 0, + 1220, 1216, 1122, 1124, 1161, 873, 871, 993, 1266, 1259, + 1262, 1166, 1270, 1272, 0, 0, 0, 0, 1283, 0, + 0, 1116, 1284, 1304, 929, 0, 0, 959, 1213, 980, + 0, 0, 0, 955, 1149, 0, 0, 0, 0, 0, + 964, 0, 1241, 1234, 0, 1240, 0, 0, 0, 0, + 1056, 716, 688, 0, 688, 0, 0, 1496, 0, 1491, + 148, 149, 150, 0, 0, 0, 165, 142, 0, 0, + 182, 170, 158, 619, 620, 0, 614, 630, 1286, 1292, + 557, 0, 1026, 0, 0, 554, 0, 134, 273, 0, + 0, 66, 0, 390, 334, 382, 365, 349, 0, 0, + 0, 274, 0, 407, 0, 0, 355, 0, 0, 0, + 0, 335, 0, 0, 294, 0, 0, 365, 0, 372, + 290, 291, 0, 58, 78, 0, 74, 0, 103, 0, + 0, 0, 0, 0, 61, 73, 0, 56, 808, 443, + 443, 64, 1317, 1960, 1961, 1962, 1963, 1964, 1965, 1966, + 1967, 1968, 1969, 2080, 1970, 1971, 1972, 1973, 1974, 1975, + 1976, 1977, 2089, 1978, 280, 1979, 1733, 1980, 1981, 1982, + 1983, 1984, 0, 1985, 806, 1986, 1987, 2168, 1988, 1134, + 1135, 279, 278, 375, 275, 383, 277, 0, 1318, 276, + 378, 333, 130, 1363, 0, 128, 0, 1361, 137, 135, + 132, 1365, 1503, 0, 0, 1054, 1055, 1052, 607, 0, + 0, 0, 499, 476, 0, 0, 0, 1552, 0, 0, + 1664, 0, 189, 0, 0, 203, 1357, 199, 368, 0, + 398, 318, 393, 0, 1552, 1550, 0, 1357, 1546, 448, + 451, 0, 0, 540, 453, 0, 0, 0, 414, 491, + 0, 515, 1018, 0, 0, 0, 0, 647, 0, 653, + 688, 591, 590, 589, 588, 670, 1603, 1892, 1789, 0, + 674, 669, 672, 677, 679, 678, 680, 676, 687, 0, + 690, 781, 1162, 1164, 0, 0, 0, 0, 745, 747, + 0, 749, 0, 801, 817, 0, 818, 0, 816, 811, + 822, 1219, 1264, 1273, 1274, 1269, 1278, 1280, 0, 0, + 0, 926, 1225, 996, 986, 984, 981, 0, 982, 963, + 0, 0, 961, 957, 0, 991, 0, 0, 1238, 0, + 1077, 0, 1080, 1094, 1090, 1089, 1085, 1051, 1085, 1458, + 580, 169, 146, 172, 171, 0, 1235, 179, 0, 0, + 170, 0, 174, 466, 0, 0, 569, 737, 562, 563, + 0, 386, 68, 0, 365, 0, 273, 351, 350, 353, + 348, 352, 0, 408, 0, 0, 292, 0, 299, 337, + 338, 336, 293, 365, 371, 295, 0, 0, 0, 70, + 60, 57, 62, 71, 0, 0, 72, 75, 802, 807, + 87, 80, 1317, 2089, 2098, 0, 0, 0, 0, 0, + 1232, 1231, 0, 472, 471, 522, 468, 479, 229, 0, + 0, 0, 342, 1549, 0, 0, 0, 368, 194, 0, + 0, 0, 0, 1552, 0, 0, 270, 0, 315, 0, + 215, 1551, 0, 0, 1538, 0, 0, 1349, 1350, 0, + 478, 1019, 0, 1020, 792, 0, 0, 645, 1085, 0, + 0, 0, 681, 675, 0, 1084, 1086, 0, 642, 1165, + 741, 0, 743, 0, 767, 0, 767, 750, 812, 804, + 1271, 1281, 1282, 1277, 1075, 0, 983, 987, 985, 965, + 1234, 1242, 1234, 1239, 1079, 1093, 1096, 690, 1302, 690, + 0, 0, 157, 0, 0, 154, 141, 159, 1151, 559, + 560, 0, 273, 0, 364, 387, 304, 282, 0, 0, + 0, 289, 296, 397, 298, 0, 79, 95, 0, 0, + 377, 138, 136, 1053, 499, 0, 205, 1357, 318, 1546, + 0, 0, 0, 0, 342, 222, 1548, 331, 324, 325, + 326, 327, 328, 329, 330, 345, 344, 316, 317, 0, + 0, 0, 0, 454, 1351, 0, 176, 185, 0, 176, + 1021, 648, 0, 690, 0, 0, 0, 673, 0, 0, + 689, 0, 545, 1163, 0, 732, 730, 0, 731, 1279, + 0, 0, 0, 0, 609, 642, 642, 143, 0, 144, + 180, 0, 0, 0, 371, 389, 363, 0, 356, 302, + 301, 303, 307, 0, 305, 0, 321, 0, 314, 282, + 0, 82, 0, 384, 467, 475, 0, 272, 1540, 368, + 0, 204, 1546, 318, 1552, 1546, 0, 1543, 0, 0, + 0, 0, 178, 1357, 0, 178, 0, 642, 683, 0, + 682, 1088, 1087, 644, 742, 0, 1076, 1244, 1243, 0, + 1100, 544, 543, 0, 0, 0, 0, 397, 0, 343, + 0, 0, 304, 0, 297, 394, 395, 396, 0, 310, + 300, 311, 76, 94, 385, 0, 368, 1541, 271, 216, + 1539, 1544, 1545, 0, 176, 175, 618, 177, 797, 186, + 618, 652, 546, 684, 641, 748, 1095, 0, 0, 0, + 0, 0, 153, 797, 164, 0, 314, 362, 357, 281, + 306, 320, 0, 0, 0, 312, 0, 313, 1546, 0, + 178, 621, 1347, 621, 1878, 1604, 1843, 0, 1112, 1101, + 1112, 1112, 1092, 145, 152, 0, 273, 286, 0, 285, + 0, 374, 309, 1542, 1357, 618, 166, 167, 0, 1105, + 1104, 1103, 1107, 1106, 0, 1099, 1097, 1098, 797, 391, + 284, 288, 287, 797, 621, 0, 0, 1109, 0, 1110, + 163, 1348, 168, 1102, 1108, 1111 }; /* YYDEFGOTO[NTERM-NUM]. */ static const yytype_int16 yydefgoto[] = { - -1, 47, 48, 49, 755, 2659, 2660, 2661, 2285, 1225, - 3449, 2286, 1226, 1227, 2663, 756, 806, 1169, 855, 1107, - 1628, 915, 1261, 1262, 757, 1782, 758, 2894, 2205, 2605, - 3431, 54, 3175, 2208, 1183, 3178, 3395, 2887, 3173, 2606, - 3470, 3524, 3176, 2209, 2210, 3396, 2211, 759, 2721, 2722, - 760, 761, 1866, 58, 1323, 551, 1863, 762, 763, 1356, - 1357, 970, 764, 1867, 1810, 3010, 1245, 1800, 1371, 62, - 1890, 765, 107, 911, 64, 766, 2648, 3011, 3442, 2674, - 3579, 2947, 2948, 3439, 3440, 2651, 2288, 3507, 3508, 2736, - 1791, 3502, 2369, 3383, 2292, 2273, 2949, 2377, 3342, 3058, - 2289, 2929, 2370, 3435, 1885, 2371, 3436, 3194, 2372, 1841, - 1870, 2652, 3509, 2293, 1842, 2647, 3012, 1779, 2373, 3446, - 2374, 552, 2933, 767, 746, 747, 962, 1350, 748, 768, - 1876, 1877, 1878, 1879, 1880, 1881, 946, 1882, 769, 770, - 2701, 2347, 3246, 2755, 3247, 2414, 2341, 1380, 2406, 1910, - 1844, 1381, 540, 1924, 2756, 2706, 1911, 771, 1108, 72, - 73, 1017, 74, 3188, 75, 76, 1753, 1754, 1755, 857, - 867, 868, 2201, 1466, 1995, 860, 1188, 1722, 841, 842, - 2331, 883, 1833, 1717, 1718, 2214, 2613, 1746, 1747, 1197, - 1198, 1981, 1982, 3410, 1983, 1984, 1459, 1460, 3285, 1734, - 1738, 1739, 2235, 2225, 1725, 2481, 3098, 3099, 3100, 3101, - 3102, 3103, 3104, 1109, 2794, 3296, 1742, 1743, 1200, 1201, - 1202, 1751, 2245, 78, 79, 2186, 2589, 2590, 812, 813, - 3115, 1489, 1756, 2798, 2799, 2800, 3118, 3119, 3120, 814, - 1012, 1013, 1040, 1035, 1478, 2005, 815, 816, 1958, 1959, - 2452, 1042, 1997, 2016, 2017, 2806, 2505, 1555, 2274, 1556, - 1557, 2031, 1558, 1110, 1559, 1587, 1111, 1592, 1561, 1112, - 1113, 1114, 1564, 1115, 1116, 1117, 1118, 1580, 1119, 1120, - 1604, 2033, 2034, 2035, 2036, 2037, 2038, 2039, 2040, 2041, - 2042, 2043, 2044, 2045, 2046, 1170, 1757, 1122, 1123, 1124, - 1125, 1126, 1127, 1128, 1129, 1130, 1131, 818, 1132, 2548, - 1133, 1679, 2180, 2588, 3108, 3293, 3294, 2878, 3163, 3324, - 3422, 3538, 3566, 3567, 3593, 1134, 1135, 1623, 1624, 1625, - 2068, 2069, 2070, 2071, 2174, 1673, 1674, 1136, 3014, 1676, - 2091, 3111, 3112, 1171, 1452, 1616, 1302, 1303, 1569, 1426, - 1427, 1433, 1933, 1441, 1445, 1963, 1964, 1453, 2141, 1137, - 2062, 2063, 2523, 1582, 2549, 2550, 1138, 1260, 1629, 2873, - 2177, 1677, 2134, 1145, 1139, 1146, 1141, 1612, 2845, 2539, - 2540, 1613, 2544, 2841, 2842, 2103, 2846, 3135, 3136, 2546, - 2242, 1705, 2247, 2248, 966, 1142, 1143, 1144, 1304, 524, - 1570, 3525, 1346, 1176, 1305, 2130, 772, 1047, 2055, 773, - 1319, 1856, 774, 3276, 3075, 1335, 1886, 2382, 553, 775, - 776, 533, 85, 2336, 927, 86, 87, 88, 892, 1373, - 777, 1374, 1375, 977, 89, 2757, 979, 980, 779, 849, - 850, 1498, 1693, 1499, 780, 92, 824, 1766, 781, 1165, - 864, 1166, 1168, 782, 1185, 2602, 2203, 95, 96, 97, + -1, 47, 48, 49, 755, 2661, 2662, 2663, 2287, 1225, + 3451, 2288, 1226, 1227, 2665, 756, 806, 1169, 855, 1107, + 1629, 915, 1261, 1262, 757, 1783, 758, 2896, 2207, 2607, + 3433, 54, 3177, 2210, 1183, 3180, 3397, 2889, 3175, 2608, + 3472, 3526, 3178, 2211, 2212, 3398, 2213, 759, 2723, 2724, + 760, 761, 1868, 58, 1324, 551, 1865, 762, 763, 1357, + 1358, 970, 764, 1869, 1811, 3012, 1245, 1801, 1372, 62, + 1892, 765, 107, 911, 64, 766, 2650, 3013, 3444, 2676, + 3581, 2949, 2950, 3441, 3442, 2653, 2290, 3509, 3510, 2738, + 1792, 3504, 2371, 3385, 2294, 2275, 2951, 2379, 3344, 3060, + 2291, 2931, 2372, 3437, 1887, 2373, 3438, 3196, 2374, 1843, + 1872, 2654, 3511, 2295, 1844, 2649, 3014, 1780, 2375, 3448, + 2376, 552, 2935, 767, 746, 747, 962, 1351, 748, 768, + 1878, 1879, 1880, 1881, 1882, 1883, 946, 1884, 769, 770, + 2703, 2349, 3248, 2757, 3249, 2416, 2343, 1381, 2408, 1912, + 1846, 1382, 540, 1926, 2758, 2708, 1913, 771, 1108, 72, + 73, 1017, 74, 3190, 75, 76, 1754, 1755, 1756, 857, + 867, 868, 2203, 1467, 1997, 860, 1188, 1723, 841, 842, + 2333, 883, 1835, 1718, 1719, 2216, 2615, 1747, 1748, 1197, + 1198, 1983, 1984, 3412, 1985, 1986, 1460, 1461, 3287, 1735, + 1739, 1740, 2237, 2227, 1726, 2483, 3100, 3101, 3102, 3103, + 3104, 3105, 3106, 1109, 2796, 3298, 1743, 1744, 1200, 1201, + 1202, 1752, 2247, 78, 79, 2188, 2591, 2592, 812, 813, + 3117, 1490, 1757, 2800, 2801, 2802, 3120, 3121, 3122, 814, + 1012, 1013, 1040, 1035, 1479, 2007, 815, 816, 1960, 1961, + 2454, 1042, 1999, 2018, 2019, 2808, 2507, 1556, 2276, 1557, + 1558, 2033, 1559, 1110, 1560, 1588, 1111, 1593, 1562, 1112, + 1113, 1114, 1565, 1115, 1116, 1117, 1118, 1581, 1119, 1120, + 1605, 2035, 2036, 2037, 2038, 2039, 2040, 2041, 2042, 2043, + 2044, 2045, 2046, 2047, 2048, 1170, 1758, 1122, 1123, 1124, + 1125, 1126, 1127, 1128, 1129, 1130, 1131, 818, 1132, 2550, + 1133, 1680, 2182, 2590, 3110, 3295, 3296, 2880, 3165, 3326, + 3424, 3540, 3568, 3569, 3595, 1134, 1135, 1624, 1625, 1626, + 2070, 2071, 2072, 2073, 2176, 1674, 1675, 1136, 3016, 1677, + 2093, 3113, 3114, 1171, 1453, 1617, 1303, 1304, 1570, 1427, + 1428, 1434, 1935, 1442, 1446, 1965, 1966, 1454, 2143, 1137, + 2064, 2065, 2525, 1583, 2551, 2552, 1138, 1260, 1630, 2875, + 2179, 1678, 2136, 1145, 1139, 1146, 1141, 1613, 2847, 2541, + 2542, 1614, 2546, 2843, 2844, 2105, 2848, 3137, 3138, 2548, + 2244, 1706, 2249, 2250, 966, 1142, 1143, 1144, 1305, 524, + 1571, 3527, 1347, 1176, 1306, 2132, 772, 1047, 2057, 773, + 1320, 1858, 774, 3278, 3077, 1336, 1888, 2384, 553, 775, + 776, 533, 85, 2338, 927, 86, 87, 88, 892, 1374, + 777, 1375, 1376, 977, 89, 2759, 979, 980, 779, 849, + 850, 1499, 1694, 1500, 780, 92, 824, 1767, 781, 1165, + 864, 1166, 1168, 782, 1185, 2604, 2205, 95, 96, 97, 115, 1256, 783, 835, 836, 873, 100, 101, 1213, 837, - 785, 786, 3272, 787, 2739, 1329, 534, 526, 527, 1572, - 720, 1307, 721 + 785, 786, 3274, 787, 2741, 1330, 534, 526, 527, 1573, + 720, 1308, 721 }; /* YYPACT[STATE-NUM] -- Index in YYTABLE of the portion describing STATE-NUM. */ -#define YYPACT_NINF -3072 +#define YYPACT_NINF -3080 static const int yypact[] = { - 7355, -34, 651, -3072, -3072, 286, -34, 51694, 66649, 129, - -34, 186, 2535, 53690, -3072, -3072, 48201, 2849, -34, 56684, - 74045, 397, 475, 33132, 457, 57183, -3072, -3072, -3072, 66649, - 56684, 57682, -34, 327, 67148, -3072, -34, 36128, 54189, 387, - -3072, 56684, 58, 136, 58181, 56684, 5695, 752, 331, -3072, - -3072, -3072, -3072, -3072, 118, -3072, -3072, -3072, -3072, -3072, - -3072, -3072, -3072, -3072, -3072, -3072, -3072, -3072, -3072, -3072, - -3072, 150, -3072, 263, 167, 33132, 33132, 1044, 373, -3072, - -3072, -3072, -3072, -3072, -3072, -3072, -3072, -3072, -3072, 450, - -3072, -3072, 740, -3072, -3072, -3072, -3072, -3072, -3072, -3072, - -3072, 35628, -3072, -3072, -3072, -3072, -3072, -3072, 58680, 56684, - 59179, 54688, 59678, -3072, 704, 1014, 690, 147, -3072, -3072, - -3072, -3072, -3072, -3072, -3072, -3072, -3072, -3072, -3072, -3072, - -3072, -3072, -3072, -3072, -3072, -3072, -3072, -3072, -3072, -3072, - -3072, -3072, -3072, -3072, -3072, -3072, -3072, -3072, -3072, -3072, - -3072, -3072, -3072, -3072, -3072, -3072, -3072, -3072, -3072, -3072, - -3072, -3072, -3072, -3072, -3072, -3072, -3072, -3072, -3072, -3072, - -3072, -3072, -3072, -3072, -3072, -3072, -3072, -3072, -3072, -3072, - -3072, -3072, -3072, -3072, -3072, -3072, -3072, -3072, -3072, -3072, - -3072, -3072, -3072, -3072, -3072, -3072, -3072, -3072, -3072, -3072, - -3072, -3072, -3072, -3072, -3072, -3072, -3072, -3072, -3072, -3072, - -3072, -3072, -3072, -3072, -3072, -3072, -3072, -3072, -3072, -3072, - -3072, -3072, -3072, -3072, -3072, -3072, -3072, -3072, -3072, -3072, - -3072, -3072, -3072, -3072, -3072, -3072, -3072, -3072, -3072, -3072, - 184, -3072, -3072, -3072, -3072, -3072, -3072, -3072, -3072, -3072, - -3072, -3072, -3072, -3072, -3072, -3072, -3072, -3072, -3072, -3072, - -3072, -3072, -3072, -3072, -3072, -3072, -3072, -3072, -3072, -3072, - -3072, -3072, -3072, -3072, -3072, -3072, -3072, -3072, -3072, -3072, - -3072, -3072, -3072, -3072, -3072, -3072, -3072, -3072, -3072, -3072, - -3072, -3072, -3072, -3072, -3072, -3072, -3072, -3072, -3072, -3072, - -3072, 532, -3072, -3072, -3072, -3072, -3072, -3072, -3072, -3072, - -3072, -3072, -3072, -3072, -3072, -3072, -3072, -3072, -3072, -3072, - -3072, -3072, -3072, -3072, -3072, -3072, -3072, -3072, -3072, -3072, - -3072, -3072, -3072, -3072, -3072, -3072, -3072, -3072, -3072, -3072, - -3072, -3072, -3072, -3072, -3072, -3072, -3072, -3072, -3072, -3072, - -3072, -3072, -3072, -3072, -3072, -3072, -3072, -3072, -3072, -3072, - -3072, -3072, -3072, -3072, -3072, -3072, -3072, -3072, -3072, -3072, - -3072, -3072, -3072, -3072, -3072, -3072, -3072, -3072, -3072, -3072, - -3072, -3072, -3072, -3072, -3072, -3072, -3072, -3072, -3072, -3072, - -3072, -3072, -3072, -3072, -3072, -3072, -3072, -3072, -3072, -3072, - -3072, -3072, -3072, -3072, -3072, -3072, -3072, -3072, -3072, -3072, - -3072, -3072, -3072, -3072, -3072, -3072, -3072, -3072, -3072, -3072, - -3072, -3072, -3072, -3072, -3072, -3072, -3072, -3072, -3072, -3072, - -3072, -3072, -3072, -3072, -3072, -3072, -3072, -3072, -3072, -3072, - -3072, -3072, -3072, -3072, -3072, -3072, -3072, 189, -3072, -3072, - -3072, -3072, -3072, -3072, -3072, -3072, -3072, -3072, -3072, -3072, - -3072, -3072, -3072, -3072, -3072, -3072, -3072, -3072, -3072, -3072, - -3072, -3072, -3072, -3072, -3072, -3072, -3072, -3072, -3072, -3072, - -3072, -3072, -3072, -3072, -3072, -3072, -3072, -3072, -3072, -3072, - -3072, -3072, -3072, -3072, -3072, -3072, -3072, -3072, -3072, -3072, - -3072, -3072, -3072, -3072, -3072, -3072, -3072, -3072, -3072, -3072, - -3072, -3072, -3072, -3072, -3072, -3072, -3072, -3072, -3072, -3072, - -3072, 533, -3072, 581, -3072, 194, -3072, -3072, -3072, -3072, - -3072, -3072, -3072, -3072, -3072, 966, -3072, -3072, 1020, 2993, - 56684, 458, 542, 794, -3072, 60177, -3072, 780, 56684, -3072, - -3072, 785, 911, 970, -3072, -3072, 55187, -3072, -3072, -3072, - -3072, -3072, -3072, -3072, -3072, -3072, -3072, -3072, -3072, -3072, - -3072, -3072, -3072, -3072, -3072, -3072, -3072, -3072, -3072, -3072, - -3072, -3072, -3072, -3072, -3072, -3072, -3072, -3072, -3072, -3072, - -3072, -3072, -3072, 48700, -3072, -3072, -3072, -3072, -3072, -3072, - -3072, -3072, -3072, -3072, -3072, -3072, -3072, -3072, -3072, -3072, - -3072, -3072, -3072, -3072, -3072, -3072, -3072, -3072, -3072, -3072, - -3072, -3072, -3072, -3072, -3072, -3072, -3072, -3072, -3072, -3072, - -3072, -3072, -3072, -3072, -3072, -3072, -3072, -3072, -3072, -3072, - -3072, -3072, -3072, -3072, -3072, -3072, -3072, -3072, -3072, -3072, - -3072, -3072, -3072, -3072, -3072, -3072, -3072, -3072, -3072, -3072, - -3072, -3072, -3072, -3072, -3072, -3072, -3072, -3072, -3072, -3072, - -3072, -3072, -3072, -3072, -3072, -3072, -3072, -3072, -3072, -3072, - -3072, -3072, -3072, -3072, -3072, -3072, -3072, -3072, -3072, -3072, - -3072, -3072, -3072, -3072, -3072, -3072, -3072, -3072, -3072, -3072, - -3072, -3072, -3072, -3072, -3072, -3072, -3072, -3072, -3072, -3072, - -3072, -3072, -3072, -3072, -3072, -3072, -3072, -3072, -3072, -3072, - -3072, -3072, 973, -3072, -3072, 741, -3072, 158, -3072, -3072, - 765, 733, -3072, -3072, -3072, -3072, -3072, -3072, -3072, -3072, - -3072, 859, -3072, -3072, -3072, 831, 67647, 60676, 61175, -3072, - 734, 2559, 8055, 74063, 32132, -3072, -3072, -3072, -3072, -3072, - -3072, -3072, -3072, -3072, -3072, -3072, -3072, -3072, -3072, -3072, - -3072, -3072, -3072, -3072, -3072, -3072, -3072, -3072, 450, -3072, - -3072, -3072, -3072, -3072, -3072, -3072, -3072, -3072, 57183, 66649, - 742, 756, 1097, 802, 34130, 809, 36628, 813, 851, 1139, - 866, 914, 935, 962, 136, 32632, 758, 533, 841, 61674, - 61674, -36, 33631, 192, -3072, 61674, 62173, -3072, 981, -3072, - 1014, -3072, -3072, -3072, -3072, -98, 975, -3072, 62672, 62672, - 62672, 1002, 1264, 62672, -3072, -3072, -3072, 995, -3072, -3072, - 1257, 20701, 20701, 68146, 68146, 1014, 68146, 1054, 68146, -3072, - -3072, 72, 690, -3072, 533, -3072, -3072, 1044, -3072, -3072, - 54189, -3072, -3072, 285, 1394, 20701, 56684, 1060, -3072, 1074, - 1060, 1076, 1099, 1107, -3072, 7355, 1444, 1326, 55686, 337, - 337, 1589, 337, 906, 953, 2653, 4581, -3072, 1578, -3072, - 1126, -3072, 56684, 57183, 1231, 1152, 1431, -3072, -3072, 1517, - 1385, 1318, 1524, 7326, 1526, 1617, 1532, 1736, 1565, 1684, - 24, -3072, 20701, 49199, 533, -3072, 11776, 20701, -3072, -3072, - -3072, 1300, -3072, -3072, -3072, -3072, -3072, 56684, 66649, 1209, - 1215, -3072, -3072, -3072, -3072, 2080, 1462, -3072, 1699, 68645, - -3072, -3072, 1271, 63171, 63670, 64169, 64668, 1664, -3072, -3072, - 1603, -3072, -3072, -3072, 1273, -3072, -3072, -3072, 185, 69144, - 1608, 1250, 117, -3072, 1620, 140, -3072, 1625, 1489, 15451, - -3072, 1434, -3072, -3072, -3072, 136, -3072, 511, -3072, -3072, - 45302, -3072, -3072, 74063, 1359, 1276, -3072, 20701, 20701, 1280, - 8290, 61674, 62173, 20701, 56684, -3072, 20701, 25426, 1281, 20701, - 20701, 12826, 20701, 31134, 61674, 192, 1272, -3072, 728, -3072, - 56684, 1282, -3072, 1371, 1371, 327, 33132, 1577, 32632, 1371, - 1371, 1371, -3072, 1213, 1576, 1504, -3072, 33132, 1504, 1388, - 1288, 1582, 1504, -3072, 265, 1586, 1371, 37127, 1291, -3072, - 1371, 1518, -3072, -3072, 20701, 15451, 71639, 1774, -3072, -3072, - -3072, -3072, 1581, -3072, 66649, 1303, -3072, -3072, -3072, -3072, - -3072, -3072, 678, 1813, 169, 1814, 20701, 169, 169, 1304, - 203, 203, -3072, 1507, 1307, -3072, 204, 1311, 1315, 1829, - 1830, 182, 152, 709, 169, 20701, -3072, 203, 1319, 1831, - 1338, 1839, 209, 212, -3072, 206, 20701, 20701, 20701, 689, - 20701, 10726, -3072, 49199, 1849, 56684, 403, -3072, 533, 1345, - 1014, -3072, -3072, -3072, -3072, -3072, -3072, -3072, 1351, -3072, - 187, 6462, -3072, -3072, -3072, -3072, -3072, -3072, -3072, -3072, - 1389, -3072, -3072, -3072, -3072, 1569, 20701, -3072, -3072, 1350, - 1577, -3072, 213, -3072, -3072, 1577, -3072, -3072, -3072, -3072, - -3072, 234, -3072, 1775, 20701, 20701, -3072, 533, 69643, -3072, - -3072, -3072, -3072, -3072, -3072, -3072, 667, -3072, 450, 592, - 47020, 1356, 1362, 1060, 56684, 56684, 1840, -3072, -3072, -3072, - -3072, 54189, 170, 1663, 171, 1496, -3072, -3072, 1044, 1044, - 15976, 1104, 225, 103, 16501, 21226, 1721, 1602, 229, 660, - 1724, -3072, 1610, 1837, 25426, 20701, 20701, 906, 953, 20701, - 1074, 94, -3072, -3072, -3072, 1669, 56684, 52193, 325, 738, - 1390, 1475, 1391, 207, 1819, -3072, 1392, -3072, 1476, 56684, - 73590, 226, -3072, 1856, 226, 226, 238, 1860, 1490, 259, - 1654, 62, -72, 1392, 1857, -3072, 54189, 143, 97, 1392, - 56684, 1493, 654, 1392, 1818, 66649, 1276, -3072, -3072, 43144, - 1404, -3072, -3072, -3072, 165, 15451, -3072, 1274, 1279, 1340, - 368, 145, 1361, 1380, 15451, 1400, 1522, 188, 1585, 1588, - 1601, 1615, 1653, 1660, 1674, 1679, 149, 1685, 1690, 1692, - 1695, 1700, 1702, -3072, 1709, 193, 1713, 202, 15451, 1718, - -3072, 47020, 25, -3072, -3072, 1722, 199, -3072, 47120, -3072, - 1706, 1498, 1506, 66649, 1458, 56684, 1570, 987, 1797, 1851, - 72123, 1677, -3072, 1754, 56684, 1682, 1857, 1686, 1441, 1922, - 1689, 1215, 1693, 1451, -3072, 70142, 49199, -3072, -3072, -3072, - -3072, -3072, 1820, 1799, 66649, 49199, 1455, -3072, -3072, 66649, - -3072, 56684, 56684, -3072, 56684, 66649, -3072, 712, 47020, 1965, - 1102, 74063, 50696, -3072, -3072, -3072, -3072, 916, 1067, -3072, - -3072, -3072, -3072, -3072, -3072, -3072, -3072, -3072, 1014, 49199, - -3072, 3606, 45923, 1460, 20701, -3072, -3072, -3072, -3072, -3072, - -3072, -3072, -3072, -3072, -3072, -3072, -3072, -3072, -3072, -3072, - -3072, -3072, -3072, -3072, -3072, -3072, -3072, -3072, -3072, -3072, - -3072, -3072, -3072, -3072, -3072, -3072, -3072, -3072, -3072, -3072, - -3072, -3072, -3072, -3072, -3072, -3072, 1461, 1809, -3072, -3072, - 5765, 1463, 46218, 1464, 25426, 25426, 533, 2790, -3072, -3072, - 25426, 1465, 51195, 45837, 1466, 1467, 46403, 17026, 20701, 17026, - 17026, 46469, -3072, 1471, 46558, 61674, 1473, 56684, 30630, -3072, - -3072, -3072, 20701, 20701, 192, 56185, 1508, 1474, -3072, -3072, - -3072, 33132, -3072, 33132, -3072, 1767, 33132, -3072, -3072, 2036, - -3072, 33132, 1770, 20701, 33132, -3072, 33132, 1716, 1719, 1484, - 33132, -3072, 56684, 1487, 56684, -3072, -3072, 47020, -3072, 1485, - 746, 1491, -3072, -3072, -3072, -3072, -3072, 1542, -3072, 1542, - 1542, -3072, -3072, -3072, -3072, 1492, 1492, 1495, -3072, -3072, - -3072, -3072, -3072, -3072, -3072, -3072, -3072, -3072, -3072, -3072, - -3072, 1503, 709, -3072, 1542, -3072, 1492, -3072, -3072, -3072, - -3072, -3072, -3072, -3072, 73590, -3072, -3072, -3072, -3072, 565, - 677, -3072, 1509, -3072, -3072, 1510, -3072, 1502, 1985, -3072, - -3072, -3072, -3072, -3072, -3072, -3072, -3072, -3072, 6072, 751, - 1492, -3072, -3072, 6514, -3072, -3072, 20701, 20701, -3072, -3072, - 1513, 47020, 1550, -3072, -3072, 20701, 20701, -3072, -3072, -3072, - -3072, 2023, -3072, 20701, 1542, 1542, -3072, 43180, -3072, 42119, - 17551, 1609, 1611, 2023, -3072, 2023, -3072, 43180, 2026, 2026, - 1521, 37626, -3072, 1687, 46767, -3072, 1529, 1918, 6712, 1528, - -3072, -3072, 1520, -3072, 1530, 1533, 43805, 20701, 183, 533, - 533, 20701, -3072, 2023, 20701, 8317, 8317, -3072, 241, 71639, - 20701, 20701, 20701, 20701, 20701, 20701, 20701, 20701, 47702, 1619, - 179, 66649, 20701, 20701, 30120, 1082, -3072, 20701, 1778, -3072, - 1538, 20701, 1629, 302, 20701, 20701, 20701, 20701, 20701, 20701, - 20701, 20701, 20701, -3072, -3072, 29101, 251, 646, 1882, 1903, - -2, 358, 20701, 1895, 11776, -3072, 1895, -3072, -3072, -3072, - -3072, -3072, 214, -3072, -3072, 1485, 1485, 66649, -3072, 56684, - 285, 53191, 20701, -3072, -3072, 1546, 1552, 155, 1622, -3072, - -3072, 56684, -3072, 40620, 1854, -3072, 345, 1554, -3072, 45798, - 1808, 1854, 1044, -3072, -3072, 26476, 1694, 1855, 1793, -3072, - -3072, 1777, 1779, -3072, 1572, 47209, 21751, 21751, -3072, 1262, - 47020, 1375, -3072, -3072, -3072, -3072, -3072, -3072, 574, -3072, - 56684, 459, 38125, -3072, 1574, 164, -3072, 2878, 1906, 1879, - 1721, 660, 1587, -3072, 57183, 57183, -3072, -3072, 1776, 1591, - 70641, 56684, 1876, 1832, 1877, 300, 71639, -3072, -3072, -3072, - -3072, 56684, 66649, 65167, 71140, 49698, 56684, 49199, -3072, -3072, - -3072, -3072, 56684, 456, 56684, 7343, -3072, -3072, -3072, -3072, - 226, -3072, -3072, -3072, -3072, -3072, 66649, 56684, -3072, -3072, - 226, 66649, 56684, 226, -3072, 1850, 56684, 56684, 56684, 56684, - 1878, 56684, 56684, 1014, -3072, -3072, -3072, 22276, 32, 32, - 1816, 13351, 163, -3072, 20701, 20701, 792, 271, 66649, 1771, - -3072, -3072, 760, 1822, 127, -3072, 66649, 1643, 56684, 56684, - 56684, 56684, 56684, 1439, -3072, -3072, -3072, -3072, -3072, 1596, - -3072, 1963, 2113, 1599, 1614, 1967, -3072, 1857, 1968, 52692, - 735, 2657, 1969, 1648, 1983, 13876, -3072, -3072, 1618, -3072, - -3072, 1621, 2099, 1866, -3072, -3072, 1852, -3072, 66649, 2142, - -3072, 117, -3072, 49199, -3072, 140, -3072, 1858, 243, -3072, - 15451, 20701, -3072, -3072, -3072, -3072, -3072, -3072, 1276, 29611, - -3072, 762, -3072, -3072, 2106, 1014, 2106, 761, -3072, -3072, - 2106, -3072, 2094, 2106, -3072, 71639, -3072, 7266, -3072, 20701, - 20701, -3072, 20701, 1982, -3072, 2144, 2144, 71639, 25426, 25426, - 25426, 25426, 25426, 25426, 252, 1319, 25426, 25426, 25426, 25426, - 25426, 25426, 25426, 25426, 25426, 27001, 432, -3072, -3072, 764, - 2118, 20701, 20701, 1992, 1982, 20701, -3072, 71639, 1641, -3072, - 1642, 1644, 20701, -3072, 71639, -3072, 56684, 1645, -3072, -3072, - -3072, 115, 1649, 1652, -3072, -3072, 1577, -3072, 875, 984, - 56684, 2254, 3554, 4652, -3072, -3072, 20701, 1990, -3072, 2036, - 2036, 33132, -3072, 20701, 1655, -3072, -3072, 33132, 1999, -3072, - 2036, -3072, -3072, 38624, 2036, 71639, 775, -3072, 56684, 71639, - 793, 20701, -3072, 15451, 2173, 71639, 2138, 66649, 66649, 2176, - 1666, 1667, 2023, 1749, -3072, 1753, 1755, 1756, -3072, -3072, - -3072, -3072, -3072, -3072, -3072, -3072, -3072, -3072, 71639, -3072, - -3072, 124, -3072, -3072, -3072, -3072, -3072, -3072, 1670, 1668, - 20701, 20701, 93, -3072, 7606, 1671, 1672, 5691, -3072, 1675, - -3072, 1665, -3072, -3072, -3072, -3072, -3072, -3072, -3072, -3072, - -3072, -3072, -3072, -3072, -3072, -3072, -3072, -3072, -3072, 1678, - -3072, 1673, -3072, 1680, 1701, 1703, 1681, 1691, 20701, 56684, - -3072, 1704, 22801, 1835, 66649, -3072, -3072, 20701, 20701, 56684, - -3072, 2046, 47020, -3072, 1696, 1708, 7829, -3072, -3072, -3072, - 231, 903, 8732, 358, 4270, 4270, 4270, 43180, -3072, -3072, - -3072, 1705, -3072, 25426, 25426, -3072, 3699, 3070, 10726, -3072, - -3072, -3072, -3072, 2047, -3072, 1125, -3072, 1710, -3072, -3072, - 3493, -3072, 42119, 9450, 20701, 200, -3072, 20701, 30120, 20701, - 1789, 4270, 4270, 4270, 280, 280, 231, 231, 231, 903, - 358, -3072, -3072, -3072, 1711, 20701, 49199, -3072, 1714, 1720, - 2066, 1338, 20701, -3072, -3072, 33132, 1508, 25, 1508, 2023, - 8317, -3072, 1074, -3072, 1074, -3072, 47020, 56684, -3072, -3072, - 1972, 1725, 33132, 1757, 2200, 2187, 66649, -3072, -3072, 1726, - 1895, 1740, -3072, -3072, 1746, 20701, 1098, 1746, -3072, 1854, - 31, 1960, 1137, 1137, 1262, 1961, -3072, -3072, 1802, -3072, - -3072, -3072, 20701, 14401, 1379, -3072, 1381, -3072, -3072, -3072, - -3072, -3072, 1731, -3072, 2015, -3072, 56684, -3072, -3072, 25426, - 2203, 20701, 39123, 2204, 2000, -3072, -3072, -3072, 1800, 1800, - -3072, -3072, 1841, 1392, 20701, 1993, -3072, 154, 1760, 2121, - 357, 2071, 66649, -3072, 343, 350, -3072, 468, 2127, 243, - 2132, 243, 49199, 49199, 49199, 800, -3072, -3072, -3072, 1014, - -3072, 279, 806, -3072, -3072, -3072, -3072, 1862, 656, 1392, - 1857, -3072, -3072, -3072, -3072, -3072, -3072, -3072, 177, 692, - 1392, 1865, -3072, 1867, -3072, 1868, 781, 1392, -3072, -3072, - 1684, 18076, 47020, 333, 163, 163, 163, 15451, -3072, 2003, - 2004, 1768, 47020, 47020, 156, -3072, -3072, -3072, -3072, 1783, - -3072, 367, -3072, 66649, -3072, -3072, -3072, 1771, 1851, 1754, - 56684, 1857, 1785, 2249, 1215, 1451, -3072, 1942, 808, 1584, - -3072, 66649, -3072, 49199, 66649, 56684, 56684, 56684, 65666, -3072, - -3072, -3072, 1788, 1786, -3072, 22, 2024, 2021, 56684, 1833, - 56684, 1391, 2276, 56684, -3072, 814, 1451, 1451, 18601, 2166, - 56684, 1799, -3072, -3072, -3072, -3072, 66649, -3072, -3072, 47020, - -3072, 1796, -3072, 20701, 50197, -3072, -3072, -3072, -3072, -3072, - -3072, -3072, 49199, -3072, 1014, -3072, 1014, 2044, 66649, 44304, - 1014, 44803, 1014, 1806, -3072, 47020, 8173, 47020, 1992, -3072, - 244, 2144, 796, 796, 796, 3353, 2155, 247, 1811, 796, - 796, 796, 377, 377, 244, 244, 244, 2144, 432, 981, - 51195, 1815, -3072, 47020, 47020, -3072, -3072, 1812, -3072, -3072, - -3072, -3072, 1817, 1824, -3072, -3072, -3072, -3072, 66649, 173, - 1508, 387, 387, 387, 387, -3072, 56684, 56684, 56684, 47020, - 2273, 2148, -3072, -3072, 2036, 47020, 56684, -3072, 28051, -3072, - 56684, -3072, 2170, -3072, 2266, -3072, 56684, 826, -3072, -3072, - -3072, 830, 1844, 1667, 71639, 844, 846, -3072, 2023, 211, - 1828, 817, 274, 797, 1397, -3072, 54189, -3072, -3072, 1838, - 46824, 20701, -3072, 2206, -3072, -3072, -3072, 20701, 20701, -3072, - 42119, -3072, -3072, -3072, -3072, 344, 344, 8692, 1704, 1842, - 1843, 56684, 10726, 46911, -3072, 39622, -3072, -3072, 2164, 1845, - -3072, 8884, 47020, -3072, 1687, -3072, -3072, 8317, 20701, 3648, - 3670, 20701, 1847, 20701, 2197, -3072, -3072, 1859, -3072, -3072, - 71639, 20701, 1853, 5327, 25426, 25426, 6012, -3072, 6179, 20701, - 10726, -3072, 43231, 1861, 1864, 1816, 19126, -3072, 2069, 1869, - -3072, 1990, 163, 1990, 1870, -3072, -3072, -3072, -3072, 6514, - -3072, 20701, 2012, 66649, 530, 1966, 869, -3072, 533, 40620, - 1757, 20701, 267, -3072, -3072, 1874, -3072, 1746, -3072, -3072, - -3072, 2085, -3072, -3072, -3072, 56684, -3072, 1880, -3072, 38125, - 2202, 11251, -3072, 38125, 56684, -3072, -3072, 56684, 9298, 2228, - -3072, 66649, 66649, 66649, -3072, 66649, 1871, 1883, 657, 1885, - 744, -3072, 2294, 657, 2210, 245, 1391, 259, 2665, 53, - -3072, -3072, -3072, 1946, 56684, -3072, 66649, -3072, -3072, -3072, - -3072, -3072, 49698, -3072, -3072, 41619, 49199, -3072, 49199, 56684, - 56684, 56684, 56684, 56684, 56684, 56684, 56684, 56684, 56684, 1276, - 20701, -3072, 20701, 1887, 1888, 1889, 1816, -3072, -3072, -3072, - 240, -3072, 1890, -3072, -3072, -3072, -72, -3072, 367, 1891, - 1896, -3072, 52692, 2993, 1648, -3072, 1621, 1851, 120, 66150, - -3072, 1898, 1900, 1754, 873, 880, 1857, 1905, 2358, -3072, - 735, 52692, -3072, -3072, -3072, 2338, -3072, 734, 233, -3072, - 1215, -3072, 2993, 1451, -3072, -3072, 2387, -3072, 2388, 2993, - 47020, 66649, 1973, -3072, 243, 881, -3072, -3072, -3072, -3072, - -3072, 66649, 1909, -3072, 1909, -3072, -3072, 1909, -3072, -3072, - -3072, -3072, 25426, 2260, 1915, 71639, -3072, -3072, 56684, -3072, - -3072, -3072, 882, 1917, 1990, 56684, 56684, 56684, 56684, -3072, - -3072, -3072, 19651, 20701, 1970, -3072, 1920, 12301, 2245, -3072, - 27526, -3072, -3072, 1926, 38624, 66649, -3072, -3072, -3072, -3072, - 2023, -3072, -3072, 66649, -3072, 1933, -3072, 1934, -3072, -3072, - -3072, -3072, -3072, -3072, -3072, -3072, -3072, 20701, 47020, -3072, - 47020, -3072, -3072, -3072, -3072, -3072, 56684, -3072, -3072, 6584, - -3072, 1930, 1935, 66649, 56684, 121, -3072, 20701, 66649, -3072, - 1835, -3072, 405, 20701, 20701, 3699, -3072, 45855, 20701, 71639, - 896, 3699, 262, 20701, 3927, 4601, 20701, 20701, 6599, 9393, - -3072, 23326, 14926, -3072, 1936, 20701, 9432, 41119, -3072, 33132, - 2148, 1937, 2148, 1014, 1938, 47020, 20701, -3072, -3072, -3072, - -3072, 1995, -23, 35128, 2169, -3072, 1955, 66649, -3072, 2012, - 47020, -3072, -3072, 42119, -3072, -3072, -3072, -3072, -3072, 2410, - 2301, 1954, 1957, -3072, 1301, -3072, -3072, 66649, 1958, -3072, - 1964, 657, -3072, 66649, 2002, -3072, 255, 2274, 153, -3072, - 20701, -3072, 2363, 2445, 2294, 1971, 66649, 56684, 25426, -3072, - 277, 224, -3072, 2259, 56684, 2002, 2402, -3072, -3072, -3072, - 744, -3072, 2299, 2214, -3072, 226, -3072, 20701, 744, 2215, - 239, 66649, -3072, -3072, 2582, -3072, 71639, 243, 243, -3072, - 1491, 1976, 1980, 1984, 1987, 1989, 2005, 2007, 2008, 2009, - 2010, -3072, 2013, 2014, 2016, 2017, 2018, 2027, 2028, 2032, - 1503, 2033, -3072, 2038, 1874, 2039, 2040, 2041, 2042, 2045, - 72607, 2050, 2051, 2055, 2056, 1509, 2058, 916, 1067, -3072, - -3072, -3072, -3072, -3072, -3072, 1250, 2060, -3072, 2025, -3072, - -3072, -3072, 2079, -3072, 2084, -3072, -3072, -3072, -3072, -3072, - -3072, 2006, 2049, -3072, -3072, -3072, 163, 2062, 2063, 66649, - 1276, 125, 49199, 66649, 2064, 1833, 2484, 834, 2268, 2067, - -3072, 1014, 2074, -3072, 1648, -3072, 52692, 2875, 618, 2021, - -3072, 196, 1833, -3072, 2477, 1648, 2109, -3072, 1621, 2174, - 20701, 160, -3072, 2305, 66649, 2078, -3072, -3072, 50197, 1909, - 4715, 25426, 71639, 915, 930, -3072, 2589, 2246, 2148, -3072, - -3072, -3072, -3072, -3072, 2081, -38, 2083, 10201, 2086, -3072, - -3072, -3072, -3072, -3072, -3072, 47020, 47020, 66649, 2267, -3072, - -3072, 2090, 2087, 40121, 2546, 2088, -3072, -3072, 2419, -3072, - 31633, -3072, 1667, 2103, 1667, 71639, 1667, -3072, -3072, 47020, - 1704, 20701, -3072, -3072, -3072, 2105, 2102, 66649, 43270, 2436, - -3072, -3072, 3699, 3699, 45855, 932, -3072, 3699, 20701, 20701, - 3699, 3699, 20701, -3072, 20176, 446, -3072, 946, -3072, 42626, - -3072, 73091, -3072, -3072, 1970, 1014, 1970, -3072, -3072, 2108, - -3072, -3072, -3072, 2171, -3072, -3072, 951, 2543, 2012, 20701, - -3072, -3072, 2119, 38125, -3072, -3072, -3072, -3072, 38125, 657, - -3072, 2292, 2002, 2128, -3072, -3072, -3072, -3072, -3072, -3072, - 42665, -3072, 65, 20701, -3072, 925, 3353, -3072, -3072, -3072, - -3072, 2002, 1215, -3072, 56684, 2605, 2496, -3072, -3072, 47020, - -3072, -3072, 2023, 2023, -3072, -3072, 2266, -3072, -3072, -3072, - 2129, -3072, -3072, 1250, 310, 41619, 56684, 56684, -3072, -3072, - 2133, -3072, -3072, -3072, -3072, -3072, -72, 2529, 959, 976, - 735, -3072, 2993, 56684, 2502, 52692, -3072, 49199, 2615, 2137, - 56684, 1833, 1086, 1086, -3072, 2288, -3072, 2289, -3072, -3072, - 2619, 261, -3072, 1307, 56684, -3072, -3072, 34629, -3072, 4715, - 986, -3072, -3072, 2143, 2145, -3072, 1970, 20701, 2146, 20701, - -3072, 23851, 2621, 2152, -3072, 20701, 2209, 28576, -3072, 20701, - -3072, 56684, 61674, 2149, 61674, -3072, -3072, -3072, -3072, 56684, - -3072, -3072, -3072, 20701, -3072, 3699, 3699, 3699, 20701, -3072, - 20701, -3072, -3072, -3072, 2360, 2267, -3072, 2267, 20701, 2993, - 533, 3911, 66649, 26, -3072, 47020, -3072, -3072, -3072, 56684, - -3072, 49199, -3072, 657, -6, 2157, 20701, 42704, 2396, -3072, - -3072, 2428, -3072, 2487, -3072, 2222, 538, 2247, -3072, -3072, - -3072, -3072, 1276, 1014, -3072, 1648, 2021, 2109, 2175, 56684, - 991, 2993, 735, 734, -3072, -3072, -3072, -3072, -3072, -3072, - -3072, -3072, -3072, -3072, -3072, -3072, -3072, 2993, 2613, 2398, - 2618, -3072, 1973, 20701, 217, -3072, 1011, 2614, -3072, -3072, - 2687, 2267, 2179, 23851, 2180, -3072, 2182, 66649, 47020, 2331, - -3072, -3072, 2184, -3072, -3072, 20701, -3072, -3072, 43309, 2189, - 2191, 2645, 1816, 2209, 2209, -3072, -23, -3072, -3072, 2617, - 34629, 2579, 1215, 657, 2216, 1023, -3072, -3072, -3072, -3072, - -3072, 1857, -3072, 42752, 2453, 151, 2437, 2157, 20701, -3072, - 2286, -3072, -3072, -3072, 2689, -3072, -3072, 52692, 2212, -3072, - 2109, 2021, 1833, 2109, 2439, -3072, 2443, 2221, 42791, 66649, - 66649, 1648, 34629, 66649, 2224, 2209, -3072, 2225, -3072, -3072, - -3072, 30630, -3072, 2227, -3072, -3072, -3072, 20701, 439, -3072, - -3072, 2279, 56684, 1024, 56, 2428, 41619, -3072, 49199, 1500, - -6, 2545, -3072, -3072, -3072, -3072, 168, 2462, -3072, 2463, - -3072, 47020, -3072, 2993, 52692, -3072, -3072, -3072, -3072, -3072, - -3072, 34629, 2614, -3072, 345, -3072, 1508, -3072, 345, -3072, - -3072, -3072, -3072, -3072, 1466, 24376, 24376, 24376, 2236, 2993, - -3072, 1508, -3072, 2367, 2437, -3072, -3072, -3072, -3072, -3072, - 195, 195, 2637, -3072, 2306, -3072, 2109, 1029, 66649, 1746, - -3072, 1746, 25951, 2393, 198, 45876, 2616, -3072, 2616, 2616, - -3072, -3072, -3072, 40620, -3072, -3072, 2738, -3072, 235, -3072, - -3072, -3072, 1648, 345, -3072, -3072, 2730, -3072, -3072, -3072, - -3072, -3072, 178, -3072, -3072, -3072, 1508, 657, -3072, -3072, - -3072, 1508, 1746, 24901, 2399, -3072, 2480, -3072, -3072, -3072, - -3072, -3072, -3072, -3072 + 6086, -8, 646, -3080, -3080, 298, -8, 51707, 66662, 128, + -8, 129, 2920, 53703, -3080, -3080, 48214, 6090, -8, 56697, + 74058, 330, 436, 32704, 437, 57196, -3080, -3080, -3080, 66662, + 56697, 57695, -8, 363, 67161, -3080, -8, 35700, 54202, 239, + -3080, 56697, 65, 50, 58194, 56697, 4652, 593, 346, -3080, + -3080, -3080, -3080, -3080, 301, -3080, -3080, -3080, -3080, -3080, + -3080, -3080, -3080, -3080, -3080, -3080, -3080, -3080, -3080, -3080, + -3080, 168, -3080, 337, 172, 32704, 32704, 97, 371, -3080, + -3080, -3080, -3080, -3080, -3080, -3080, -3080, -3080, -3080, 453, + -3080, -3080, 430, -3080, -3080, -3080, -3080, -3080, -3080, -3080, + -3080, 35200, -3080, -3080, -3080, -3080, -3080, -3080, 58693, 56697, + 59192, 54701, 59691, -3080, 654, 953, 633, 196, -3080, -3080, + -3080, -3080, -3080, -3080, -3080, -3080, -3080, -3080, -3080, -3080, + -3080, -3080, -3080, -3080, -3080, -3080, -3080, -3080, -3080, -3080, + -3080, -3080, -3080, -3080, -3080, -3080, -3080, -3080, -3080, -3080, + -3080, -3080, -3080, -3080, -3080, -3080, -3080, -3080, -3080, -3080, + -3080, -3080, -3080, -3080, -3080, -3080, -3080, -3080, -3080, -3080, + -3080, -3080, -3080, -3080, -3080, -3080, -3080, -3080, -3080, -3080, + -3080, -3080, -3080, -3080, -3080, -3080, -3080, -3080, -3080, -3080, + -3080, -3080, -3080, -3080, -3080, -3080, -3080, -3080, -3080, -3080, + -3080, -3080, -3080, -3080, -3080, -3080, -3080, -3080, -3080, -3080, + -3080, -3080, -3080, -3080, -3080, -3080, -3080, -3080, -3080, -3080, + -3080, -3080, -3080, -3080, -3080, -3080, -3080, -3080, -3080, -3080, + -3080, -3080, -3080, -3080, -3080, -3080, -3080, -3080, -3080, -3080, + 208, -3080, -3080, -3080, -3080, -3080, -3080, -3080, -3080, -3080, + -3080, -3080, -3080, -3080, -3080, -3080, -3080, -3080, -3080, -3080, + -3080, -3080, -3080, -3080, -3080, -3080, -3080, -3080, -3080, -3080, + -3080, -3080, -3080, -3080, -3080, -3080, -3080, -3080, -3080, -3080, + -3080, -3080, -3080, -3080, -3080, -3080, -3080, -3080, -3080, -3080, + -3080, -3080, -3080, -3080, -3080, -3080, -3080, -3080, -3080, -3080, + -3080, 508, -3080, -3080, -3080, -3080, -3080, -3080, -3080, -3080, + -3080, -3080, -3080, -3080, -3080, -3080, -3080, -3080, -3080, -3080, + -3080, -3080, -3080, -3080, -3080, -3080, -3080, -3080, -3080, -3080, + -3080, -3080, -3080, -3080, -3080, -3080, -3080, -3080, -3080, -3080, + -3080, -3080, -3080, -3080, -3080, -3080, -3080, -3080, -3080, -3080, + -3080, -3080, -3080, -3080, -3080, -3080, -3080, -3080, -3080, -3080, + -3080, -3080, -3080, -3080, -3080, -3080, -3080, -3080, -3080, -3080, + -3080, -3080, -3080, -3080, -3080, -3080, -3080, -3080, -3080, -3080, + -3080, -3080, -3080, -3080, -3080, -3080, -3080, -3080, -3080, -3080, + -3080, -3080, -3080, -3080, -3080, -3080, -3080, -3080, -3080, -3080, + -3080, -3080, -3080, -3080, -3080, -3080, -3080, -3080, -3080, -3080, + -3080, -3080, -3080, -3080, -3080, -3080, -3080, -3080, -3080, -3080, + -3080, -3080, -3080, -3080, -3080, -3080, -3080, -3080, -3080, -3080, + -3080, -3080, -3080, -3080, -3080, -3080, -3080, -3080, -3080, -3080, + -3080, -3080, -3080, -3080, -3080, -3080, -3080, 209, -3080, -3080, + -3080, -3080, -3080, -3080, -3080, -3080, -3080, -3080, -3080, -3080, + -3080, -3080, -3080, -3080, -3080, -3080, -3080, -3080, -3080, -3080, + -3080, -3080, -3080, -3080, -3080, -3080, -3080, -3080, -3080, -3080, + -3080, -3080, -3080, -3080, -3080, -3080, -3080, -3080, -3080, -3080, + -3080, -3080, -3080, -3080, -3080, -3080, -3080, -3080, -3080, -3080, + -3080, -3080, -3080, -3080, -3080, -3080, -3080, -3080, -3080, -3080, + -3080, -3080, -3080, -3080, -3080, -3080, -3080, -3080, -3080, -3080, + -3080, 641, -3080, 553, -3080, 213, -3080, -3080, -3080, -3080, + -3080, -3080, -3080, -3080, -3080, 1316, -3080, -3080, 946, 1994, + 56697, 379, 742, 757, -3080, 60190, -3080, 737, 56697, -3080, + -3080, 752, 1090, 955, -3080, -3080, 55200, -3080, -3080, -3080, + -3080, -3080, -3080, -3080, -3080, -3080, -3080, -3080, -3080, -3080, + -3080, -3080, -3080, -3080, -3080, -3080, -3080, -3080, -3080, -3080, + -3080, -3080, -3080, -3080, -3080, -3080, -3080, -3080, -3080, -3080, + -3080, -3080, -3080, 48713, -3080, -3080, -3080, -3080, -3080, -3080, + -3080, -3080, -3080, -3080, -3080, -3080, -3080, -3080, -3080, -3080, + -3080, -3080, -3080, -3080, -3080, -3080, -3080, -3080, -3080, -3080, + -3080, -3080, -3080, -3080, -3080, -3080, -3080, -3080, -3080, -3080, + -3080, -3080, -3080, -3080, -3080, -3080, -3080, -3080, -3080, -3080, + -3080, -3080, -3080, -3080, -3080, -3080, -3080, -3080, -3080, -3080, + -3080, -3080, -3080, -3080, -3080, -3080, -3080, -3080, -3080, -3080, + -3080, -3080, -3080, -3080, -3080, -3080, -3080, -3080, -3080, -3080, + -3080, -3080, -3080, -3080, -3080, -3080, -3080, -3080, -3080, -3080, + -3080, -3080, -3080, -3080, -3080, -3080, -3080, -3080, -3080, -3080, + -3080, -3080, -3080, -3080, -3080, -3080, -3080, -3080, -3080, -3080, + -3080, -3080, -3080, -3080, -3080, -3080, -3080, -3080, -3080, -3080, + -3080, -3080, -3080, -3080, -3080, -3080, -3080, -3080, -3080, -3080, + -3080, -3080, 930, -3080, -3080, 759, -3080, 187, -3080, -3080, + 785, 730, -3080, -3080, -3080, -3080, -3080, -3080, -3080, -3080, + -3080, 834, -3080, -3080, -3080, 870, 67660, 60689, 61188, -3080, + 743, 1581, 7891, 74076, 31704, -3080, -3080, -3080, -3080, -3080, + -3080, -3080, -3080, -3080, -3080, -3080, -3080, -3080, -3080, -3080, + -3080, -3080, -3080, -3080, -3080, -3080, -3080, -3080, 453, -3080, + -3080, -3080, -3080, -3080, -3080, -3080, -3080, -3080, 57196, 66662, + 769, 793, 1150, 808, 33702, 819, 36200, 826, 844, 1127, + 857, 879, 897, 920, 50, 32204, 875, 641, 832, 61687, + 61687, 16, 33203, 2103, -3080, 61687, 62186, -3080, 936, -3080, + 953, -3080, -3080, -3080, -3080, -73, 929, -3080, 62685, 62685, + 62685, 959, 1234, 62685, -3080, -3080, -3080, 942, -3080, -3080, + 1174, 20273, 20273, 68159, 68159, 953, 68159, 970, 68159, -3080, + -3080, 43, 633, -3080, 641, -3080, -3080, 97, -3080, -3080, + 54202, -3080, -3080, 333, 1327, 20273, 56697, 978, -3080, 996, + 978, 1002, 1008, 1017, -3080, 6086, 1346, 1256, 55699, 435, + 435, 1508, 435, 948, 1034, 3537, 2504, -3080, 1326, -3080, + 1071, -3080, 56697, 57196, 1173, 1097, 1382, -3080, -3080, 1456, + 1128, 1257, 1471, 2751, 1479, 1322, 1491, 1618, 1493, 1612, + 54, -3080, 20273, 49212, 641, -3080, 11348, 20273, -3080, -3080, + -3080, 1235, -3080, -3080, -3080, -3080, -3080, 56697, 66662, 1137, + 1156, -3080, -3080, -3080, -3080, 1977, 1406, -3080, 1628, 68658, + -3080, -3080, 1213, 63184, 63683, 64182, 64681, 1596, -3080, -3080, + 1541, -3080, -3080, -3080, 1224, -3080, -3080, -3080, 218, 69157, + 1560, 1198, 123, -3080, 1602, 194, -3080, 1604, 1458, 15023, + -3080, 1416, -3080, -3080, -3080, 50, -3080, 727, -3080, -3080, + 45315, -3080, -3080, 74076, 1352, 1267, -3080, 20273, 20273, 1270, + 5728, 61687, 62186, 20273, 56697, -3080, 20273, 24998, 1275, 20273, + 20273, 12398, 20273, 30706, 61687, 2103, 1276, -3080, 584, -3080, + 56697, 1289, -3080, 1389, 1389, 363, 32704, 1617, 32204, 1389, + 1389, 1389, -3080, 1132, 1615, 1549, -3080, 32704, 1549, 1666, + 1335, 1633, 1549, -3080, 257, 1637, 1389, 36699, 1348, -3080, + 1389, 1567, -3080, -3080, 20273, 15023, 71652, 1828, -3080, -3080, + -3080, -3080, 1635, -3080, 66662, 1362, -3080, -3080, -3080, -3080, + -3080, -3080, -79, 1885, 203, 1888, 20273, 203, 203, 1381, + 214, 214, -3080, 1588, 1401, -3080, 215, 1408, 1413, 1934, + 1950, 202, 161, 1072, 203, 20273, -3080, 214, 1443, 1961, + 1450, 1969, 231, 240, -3080, 224, 20273, 20273, 20273, 319, + 20273, 10298, -3080, 49212, 1967, 56697, 784, -3080, 641, 1462, + 953, -3080, -3080, -3080, -3080, -3080, -3080, -3080, 1463, -3080, + 207, 6998, -3080, -3080, -3080, -3080, -3080, -3080, -3080, -3080, + 1501, -3080, -3080, -3080, -3080, 1682, 20273, -3080, -3080, 1464, + 1617, -3080, 227, -3080, -3080, 1617, -3080, -3080, -3080, -3080, + -3080, 158, -3080, 1881, 20273, 20273, -3080, 641, 69656, -3080, + -3080, -3080, -3080, -3080, -3080, -3080, 797, -3080, 453, 658, + 47033, 1465, 1470, 978, 56697, 56697, 1952, -3080, -3080, -3080, + -3080, 54202, 131, 1770, 178, 1608, -3080, -3080, 97, 97, + 15548, 877, 590, 1029, 16073, 20798, 1826, 1707, 331, 653, + 1834, -3080, 1710, 1944, 24998, 20273, 20273, 948, 1034, 20273, + 996, 79, -3080, -3080, -3080, 1769, 56697, 52206, 981, 1006, + 1490, 1578, 1494, 393, 1918, -3080, 1495, -3080, 1582, 56697, + 73603, 219, -3080, 1965, 219, 219, 816, 1972, 1595, 279, + 1767, 46, 434, 1495, 2820, -3080, 54202, 271, 69, 1495, + 56697, 1619, 114, 1495, 1938, 66662, 1267, -3080, -3080, 42881, + 1529, -3080, -3080, -3080, 174, 15023, -3080, 1268, 1280, 1336, + 414, 185, 1535, 1543, 15023, 1552, 1563, 176, 1605, 1659, + 1693, 1763, 1777, 1790, 1802, 1805, 151, 1814, 1819, 1831, + 1842, 1847, 1860, -3080, 1865, 190, 1884, 228, 15023, 1889, + -3080, 1534, 47033, 0, -3080, -3080, 1892, 192, -3080, 47133, + -3080, 1832, 1629, 1630, 66662, 1579, 56697, 1685, 1754, 1910, + 1963, 72136, 1791, -3080, 1869, 56697, 1795, 2820, 1798, 1556, + 2035, 1801, 1156, 1806, 1564, -3080, 70155, 49212, -3080, -3080, + -3080, -3080, -3080, 1931, 1912, 66662, 49212, 1568, -3080, -3080, + 66662, -3080, 56697, 56697, -3080, 56697, 66662, -3080, 852, 47033, + 2074, 806, 74076, 50709, -3080, -3080, -3080, -3080, 842, 885, + -3080, -3080, -3080, -3080, -3080, -3080, -3080, -3080, -3080, 953, + 49212, -3080, 3716, 45936, 1570, 20273, -3080, -3080, -3080, -3080, + -3080, -3080, -3080, -3080, -3080, -3080, -3080, -3080, -3080, -3080, + -3080, -3080, -3080, -3080, -3080, -3080, -3080, -3080, -3080, -3080, + -3080, -3080, -3080, -3080, -3080, -3080, -3080, -3080, -3080, -3080, + -3080, -3080, -3080, -3080, -3080, -3080, -3080, 1571, 1919, -3080, + -3080, 6931, 1573, 46231, 1575, 24998, 24998, 641, 2250, -3080, + -3080, 24998, 1576, 51208, 45850, 1574, 1585, 46416, 16598, 20273, + 16598, 16598, 46482, -3080, 1587, 46571, 61687, 1580, 56697, 30202, + -3080, -3080, -3080, 20273, 20273, 2103, 56198, 1631, 1590, -3080, + -3080, -3080, 32704, -3080, 32704, -3080, 1882, 32704, -3080, -3080, + 1810, -3080, 32704, 1886, 20273, 32704, -3080, 32704, 1830, 1833, + 1598, 32704, -3080, 56697, 1599, 56697, -3080, -3080, 47033, -3080, + 1592, 868, 1611, -3080, -3080, -3080, -3080, -3080, 1652, -3080, + 1652, 1652, -3080, -3080, -3080, -3080, 1616, 1616, 1623, -3080, + -3080, -3080, -3080, -3080, -3080, -3080, -3080, -3080, -3080, -3080, + -3080, -3080, 1624, 1072, -3080, 1652, -3080, 1616, -3080, -3080, + -3080, -3080, -3080, -3080, -3080, 73603, -3080, -3080, -3080, -3080, + 631, 637, -3080, 1626, -3080, -3080, 1632, -3080, 1627, 2096, + -3080, -3080, -3080, -3080, -3080, -3080, -3080, -3080, -3080, 8831, + 888, 1616, -3080, -3080, 3392, -3080, -3080, 20273, 20273, -3080, + -3080, 1638, 47033, 1646, -3080, -3080, 20273, 20273, -3080, -3080, + -3080, -3080, 2127, -3080, 20273, 1652, 1652, -3080, 45868, -3080, + 41691, 17123, 1717, 1719, 2127, -3080, 2127, -3080, 45868, 2140, + 2140, 1641, 37198, -3080, 1808, 46780, -3080, 1643, 1676, 7616, + 1639, -3080, -3080, 1642, -3080, 1647, 1636, 43818, 20273, 191, + 641, 641, 20273, -3080, 2127, 20273, 9061, 9061, -3080, 217, + 71652, 20273, 20273, 20273, 20273, 20273, 20273, 20273, 20273, 47715, + 1739, 186, 66662, 20273, 20273, 29692, 999, -3080, 20273, 1895, + -3080, 1654, 20273, 1747, 325, 20273, 20273, 20273, 20273, 20273, + 20273, 20273, 20273, 20273, -3080, -3080, 28673, 220, 664, 1998, + 2018, -26, 432, 20273, 2010, 11348, -3080, 2010, -3080, -3080, + -3080, -3080, -3080, 230, -3080, -3080, 1592, 1592, 66662, -3080, + 56697, 333, 53204, 20273, -3080, -3080, 1661, 1665, 181, 1729, + -3080, -3080, 56697, -3080, 40192, 1973, -3080, 342, 1668, -3080, + 45811, 1921, 1973, 97, -3080, -3080, 26048, 1807, 1974, 1909, + -3080, -3080, 1890, 1893, -3080, 1680, 47222, 21323, 21323, -3080, + 886, 47033, 900, -3080, -3080, -3080, -3080, -3080, -3080, 1007, + -3080, 56697, 100, 37697, -3080, 1694, 99, -3080, 3147, 2026, + 1995, 1826, 653, 1698, -3080, 57196, 57196, -3080, -3080, 1683, + 1703, 70654, 56697, 1996, 1947, 1999, 400, 71652, -3080, -3080, + -3080, -3080, 56697, 66662, 65180, 71153, 49711, 56697, 49212, -3080, + -3080, -3080, -3080, 56697, 1003, 56697, 6450, -3080, -3080, -3080, + -3080, 219, -3080, -3080, -3080, -3080, -3080, 66662, 56697, -3080, + -3080, 219, 66662, 56697, 219, -3080, 1748, 56697, 56697, 56697, + 56697, 1773, 56697, 56697, 953, -3080, -3080, -3080, 21848, 73, + 73, 1929, -3080, 12923, 165, -3080, 20273, 20273, 871, 299, + 66662, 1897, -3080, -3080, 889, 1948, 144, -3080, 66662, 1762, + 56697, 56697, 56697, 56697, 56697, 625, -3080, -3080, -3080, -3080, + -3080, 1720, -3080, 2085, 2236, 1722, 1724, 2091, -3080, 2820, + 2095, 52705, 670, 2069, 2097, 1768, 2099, 13448, -3080, -3080, + 1731, -3080, -3080, 1732, 2216, 1982, -3080, -3080, 1978, -3080, + 66662, 2261, -3080, 123, -3080, 49212, -3080, 194, -3080, 1983, + 211, -3080, 15023, 20273, -3080, -3080, -3080, -3080, -3080, -3080, + 1267, 29183, -3080, 901, -3080, -3080, 2234, 953, 2234, 615, + -3080, -3080, 2234, -3080, 2221, 2234, -3080, 71652, -3080, 7664, + -3080, 20273, 20273, -3080, 20273, 2109, -3080, 2264, 2264, 71652, + 24998, 24998, 24998, 24998, 24998, 24998, 225, 1443, 24998, 24998, + 24998, 24998, 24998, 24998, 24998, 24998, 24998, 26573, 438, -3080, + -3080, 911, 2242, 20273, 20273, 2116, 2109, 20273, -3080, 71652, + 1765, -3080, 1766, 1771, 20273, -3080, 71652, -3080, 56697, 1776, + -3080, -3080, -3080, 67, 1778, 1797, -3080, -3080, 1617, -3080, + 837, 863, 56697, 3629, 3898, 4357, -3080, -3080, 20273, 2106, + -3080, 1810, 1810, 32704, -3080, 20273, 1799, -3080, -3080, 32704, + 2121, -3080, 1810, -3080, -3080, 38196, 1810, 71652, 957, -3080, + 56697, 71652, 967, 20273, -3080, 15023, 2286, 71652, 2274, 66662, + 66662, 2316, 1804, 1809, 2127, 1896, -3080, 1898, 1900, 1901, + -3080, -3080, -3080, -3080, -3080, -3080, -3080, -3080, -3080, -3080, + 71652, -3080, -3080, 308, -3080, -3080, -3080, -3080, -3080, -3080, + 1815, 1816, 20273, 20273, 120, -3080, 8235, 1817, 1818, 6158, + -3080, 1813, -3080, 1812, -3080, -3080, -3080, -3080, -3080, -3080, + -3080, -3080, -3080, -3080, -3080, -3080, -3080, -3080, -3080, -3080, + -3080, 1803, -3080, 1823, -3080, 1824, 1825, 1843, 1827, 1840, + 20273, 56697, -3080, 1829, 22373, 1992, 66662, -3080, -3080, 20273, + 20273, 56697, -3080, 2199, 47033, -3080, 1845, 1846, 8765, -3080, + -3080, -3080, 238, 386, 7136, 432, 1232, 1232, 1232, 45868, + -3080, -3080, -3080, 1850, -3080, 24998, 24998, -3080, 1255, 4687, + 10298, -3080, -3080, -3080, -3080, 2189, -3080, 947, -3080, 1844, + -3080, -3080, 5027, -3080, 41691, 7683, 20273, 195, -3080, 20273, + 29692, 20273, 1935, 1232, 1232, 1232, 295, 295, 238, 238, + 238, 386, 432, -3080, -3080, -3080, 1849, 20273, 49212, -3080, + 1851, 1853, 2213, 1450, 20273, -3080, -3080, 32704, 1631, 0, + 1631, 2127, 9061, -3080, 996, -3080, 996, -3080, 47033, 56697, + -3080, -3080, 2124, 1857, 32704, 1903, 2337, 2319, 66662, -3080, + -3080, 1859, 2010, 1875, -3080, -3080, 1887, 20273, 1793, 1887, + -3080, 1973, 14, 2098, 1088, 1088, 886, 2100, -3080, -3080, + 1933, -3080, -3080, -3080, 20273, 13973, 907, -3080, 1393, -3080, + -3080, -3080, -3080, -3080, 1866, -3080, 2150, -3080, 56697, -3080, + -3080, 24998, 2336, 20273, 38695, 2342, 2130, -3080, -3080, -3080, + 1937, 1937, -3080, -3080, 1979, 1495, 20273, 2128, -3080, 156, + 1891, 2252, 603, 2205, 66662, -3080, 341, 368, -3080, 200, + 2259, 211, 2260, 211, 49212, 49212, 49212, 986, -3080, -3080, + -3080, 953, -3080, 364, 1004, -3080, -3080, -3080, -3080, 1985, + 663, 1495, 2820, -3080, -3080, -3080, -3080, -3080, -3080, -3080, + 273, 667, 1495, 1986, -3080, 1988, -3080, 1989, 671, 1495, + -3080, -3080, 1612, 17648, 47033, 511, 165, 165, 165, 15023, + -3080, 2139, 2141, 1905, 47033, 47033, 153, -3080, -3080, -3080, + -3080, 1911, -3080, 234, -3080, 66662, -3080, -3080, -3080, 1897, + 1963, 1869, 56697, 2820, 1913, 2390, 1156, 1564, -3080, 2077, + 426, 1606, -3080, 66662, -3080, 49212, 66662, 56697, 56697, 56697, + 65679, -3080, -3080, -3080, 1914, 1915, -3080, 24, 2146, 2145, + 56697, 1956, 56697, 1494, 2398, 56697, -3080, 1009, 1564, 1564, + 18173, 2288, 56697, 1912, -3080, -3080, -3080, -3080, 66662, -3080, + -3080, 47033, -3080, 1916, -3080, 20273, 50210, -3080, -3080, -3080, + -3080, -3080, -3080, -3080, 49212, -3080, 953, -3080, 953, 2161, + 66662, 44317, 953, 44816, 953, 1923, -3080, 47033, 8870, 47033, + 2116, -3080, 237, 2264, 311, 311, 311, 2474, 2275, 328, + 1930, 311, 311, 311, 255, 255, 237, 237, 237, 2264, + 438, 936, 51208, 1932, -3080, 47033, 47033, -3080, -3080, 1939, + -3080, -3080, -3080, -3080, 1941, 1942, -3080, -3080, -3080, -3080, + 66662, 173, 1631, 239, 239, 239, 239, -3080, 56697, 56697, + 56697, 47033, 2394, 2270, -3080, -3080, 1810, 47033, 56697, -3080, + 27623, -3080, 56697, -3080, 2295, -3080, 2383, -3080, 56697, 1010, + -3080, -3080, -3080, 1015, 1949, 1809, 71652, 1024, 1039, -3080, + 2127, 167, 1945, 1644, 866, 798, 1537, -3080, 54202, -3080, + -3080, 1951, 46837, 20273, -3080, 2325, -3080, -3080, -3080, 20273, + 20273, -3080, 41691, -3080, -3080, -3080, -3080, 370, 370, 8950, + 1829, 1954, 1959, 56697, 10298, 46924, -3080, 39194, -3080, -3080, + 2272, 1958, -3080, 9060, 47033, -3080, 1808, -3080, -3080, 9061, + 20273, 3167, 3242, 20273, 1962, 20273, 2297, -3080, -3080, 1955, + -3080, -3080, 71652, 20273, 1968, 6913, 24998, 24998, 7013, -3080, + 7236, 20273, 10298, -3080, 42968, 1980, 1991, 1929, 18698, -3080, + 2195, 1975, -3080, 2106, 165, 2106, 2001, -3080, -3080, -3080, + -3080, 3392, -3080, 20273, 2153, 66662, 527, 2877, 1050, -3080, + 641, 40192, 1903, 20273, 246, -3080, -3080, 1993, -3080, 1887, + -3080, -3080, -3080, 2210, -3080, -3080, -3080, 56697, -3080, 2006, + -3080, 37697, 2326, 10823, -3080, 37697, 56697, -3080, -3080, 56697, + 42198, 2363, -3080, 66662, 66662, 66662, -3080, 66662, 2005, 2009, + 692, 2000, 781, -3080, 2561, 692, 2353, 307, 1494, 279, + 5359, 401, -3080, -3080, -3080, 2089, 56697, -3080, 66662, -3080, + -3080, -3080, -3080, -3080, 49711, -3080, -3080, 41191, 49212, -3080, + 49212, 56697, 56697, 56697, 56697, 56697, 56697, 56697, 56697, 56697, + 56697, 1267, 20273, -3080, 20273, 2014, 2015, 2016, 1929, -3080, + -3080, -3080, 280, -3080, 2019, -3080, -3080, -3080, 434, -3080, + 234, 2022, 2025, -3080, 52705, 1994, 1768, -3080, 1732, 1963, + 867, 66163, -3080, 2017, 2023, 1869, 1080, 1085, 2820, 2029, + 2511, -3080, 670, 52705, -3080, -3080, -3080, 2458, -3080, 743, + 242, -3080, 1156, -3080, 1994, 1564, -3080, -3080, 2512, -3080, + 2514, 1994, 47033, 66662, 2102, -3080, 211, 1093, -3080, -3080, + -3080, -3080, -3080, 66662, 2038, -3080, 2038, -3080, -3080, 2038, + -3080, -3080, -3080, -3080, 24998, 2389, 2045, 71652, -3080, -3080, + 56697, -3080, -3080, -3080, 1095, 2048, 2106, 56697, 56697, 56697, + 56697, -3080, -3080, -3080, 19223, 20273, 2093, -3080, 2049, 11873, + 2365, -3080, 27098, -3080, -3080, 2057, 38196, 66662, -3080, -3080, + -3080, -3080, 2127, -3080, -3080, 66662, -3080, 2060, -3080, 2061, + -3080, -3080, -3080, -3080, -3080, -3080, -3080, -3080, -3080, 20273, + 47033, -3080, 47033, -3080, -3080, -3080, -3080, -3080, 56697, -3080, + -3080, 7065, -3080, 2058, 2065, 66662, 56697, 140, -3080, 20273, + 66662, -3080, 1992, -3080, 389, 20273, 20273, 1255, -3080, 43246, + 20273, 71652, 1108, 1255, 252, 20273, 3830, 4216, 20273, 20273, + 8099, 42237, -3080, 22898, 14498, -3080, 2066, 20273, 42276, 40691, + -3080, 32704, 2270, 2067, 2270, 953, 2070, 47033, 20273, -3080, + -3080, -3080, -3080, 2125, 32, 34700, 2289, -3080, 2084, 66662, + -3080, 2153, 47033, -3080, -3080, 41691, -3080, -3080, -3080, -3080, + -3080, 2536, 2083, 2078, 2079, -3080, 1455, -3080, -3080, 66662, + 2081, -3080, 2082, 692, -3080, 66662, 2122, -3080, 269, 2399, + 125, -3080, 20273, -3080, 2490, 2569, 2561, 2092, 66662, 56697, + 24998, -3080, 275, 254, -3080, 2387, 56697, 2122, 2529, -3080, + -3080, -3080, 781, -3080, 2427, 2340, -3080, 219, -3080, 20273, + 781, 2345, 267, 66662, -3080, -3080, 2154, -3080, 71652, 211, + 211, -3080, 1611, 2110, 2112, 2120, 2123, 2131, 2135, 2136, + 2137, 2138, 2143, -3080, 2144, 2148, 2149, 2152, 2155, 2159, + 2169, 2170, 1624, 2171, -3080, 2172, 1993, 2173, 2174, 2175, + 2177, 2178, 72620, 2179, 2181, 2182, 2184, 1626, 2185, 842, + 885, -3080, -3080, -3080, -3080, -3080, -3080, 1198, 2186, -3080, + 2115, -3080, -3080, -3080, 2198, -3080, 2217, -3080, -3080, -3080, + -3080, -3080, -3080, 2119, 2133, -3080, -3080, -3080, 165, 2142, + 2147, 66662, 1267, 119, 49212, 66662, 2162, 1956, 2604, 944, + 2372, 2156, -3080, 953, 2192, -3080, 1768, -3080, 52705, 2420, + 258, 2145, -3080, 264, 1956, -3080, 2552, 1768, 2180, -3080, + 1732, 2246, 20273, 159, -3080, 2417, 66662, 2193, -3080, -3080, + 50210, 2038, 4502, 24998, 71652, 1110, 1148, -3080, 2703, 2360, + 2270, -3080, -3080, -3080, -3080, -3080, 2197, 12, 2207, 9773, + 2204, -3080, -3080, -3080, -3080, -3080, -3080, 47033, 47033, 66662, + 2396, -3080, -3080, 2211, 2215, 39693, 2679, 2222, -3080, -3080, + 2544, -3080, 31205, -3080, 1809, 2241, 1809, 71652, 1809, -3080, + -3080, 47033, 1829, 20273, -3080, -3080, -3080, 2243, 2253, 66662, + 43265, 2577, -3080, -3080, 1255, 1255, 43246, 1172, -3080, 1255, + 20273, 20273, 1255, 1255, 20273, -3080, 19748, 616, -3080, 1180, + -3080, 42324, -3080, 73104, -3080, -3080, 2093, 953, 2093, -3080, + -3080, 2254, -3080, -3080, -3080, 2312, -3080, -3080, 1194, 2684, + 2153, 20273, -3080, -3080, 2262, 37697, -3080, -3080, -3080, -3080, + 37697, 692, -3080, 2431, 2122, 2266, -3080, -3080, -3080, -3080, + -3080, -3080, 42363, -3080, 82, 20273, -3080, 160, 2474, -3080, + -3080, -3080, -3080, 2122, 1156, -3080, 56697, 2740, 2630, -3080, + -3080, 47033, -3080, -3080, 2127, 2127, -3080, -3080, 2383, -3080, + -3080, -3080, 2265, -3080, -3080, 1198, 204, 41191, 56697, 56697, + -3080, -3080, 2267, -3080, -3080, -3080, -3080, -3080, 434, 2665, + 1201, 1205, 670, -3080, 1994, 56697, 2638, 52705, -3080, 49212, + 2753, 2277, 56697, 1956, 433, 433, -3080, 2428, -3080, 2429, + -3080, -3080, 2759, 320, -3080, 1401, 56697, -3080, -3080, 34201, + -3080, 4502, 1206, -3080, -3080, 2281, 2283, -3080, 2093, 20273, + 2287, 20273, -3080, 23423, 2764, 2284, -3080, 20273, 2351, 28148, + -3080, 20273, -3080, 56697, 61687, 2291, 61687, -3080, -3080, -3080, + -3080, 56697, -3080, -3080, -3080, 20273, -3080, 1255, 1255, 1255, + 20273, -3080, 20273, -3080, -3080, -3080, 2500, 2396, -3080, 2396, + 20273, 1994, 641, 2653, 66662, 13, -3080, 47033, -3080, -3080, + -3080, 56697, -3080, 49212, -3080, 692, 354, 2296, 20273, 42716, + 2535, -3080, -3080, 2567, -3080, 2626, -3080, 2361, 323, 2378, + -3080, -3080, -3080, -3080, 1267, 953, -3080, 1768, 2145, 2180, + 2303, 56697, 1207, 1994, 670, 743, -3080, -3080, -3080, -3080, + -3080, -3080, -3080, -3080, -3080, -3080, -3080, -3080, -3080, 1994, + 2749, 2531, 2754, -3080, 2102, 20273, 145, -3080, 1230, 2747, + -3080, -3080, 2821, 2396, 2310, 23423, 2313, -3080, 2315, 66662, + 47033, 2460, -3080, -3080, 2318, -3080, -3080, 20273, -3080, -3080, + 43322, 2317, 2321, 2776, 1929, 2351, 2351, -3080, 32, -3080, + -3080, 2750, 34201, 2707, 1156, 692, 2338, 1231, -3080, -3080, + -3080, -3080, -3080, 2820, -3080, 42803, 2571, 623, 2556, 2296, + 20273, -3080, 2405, -3080, -3080, -3080, 2810, -3080, -3080, 52705, + 2333, -3080, 2180, 2145, 1956, 2180, 2559, -3080, 2562, 2346, + 42842, 66662, 66662, 1768, 34201, 66662, 2344, 2351, -3080, 2350, + -3080, -3080, -3080, 30202, -3080, 2354, -3080, -3080, -3080, 20273, + 136, -3080, -3080, 2403, 56697, 1241, 87, 2567, 41191, -3080, + 49212, 1022, 354, 2651, -3080, -3080, -3080, -3080, 124, 2587, + -3080, 2588, -3080, 47033, -3080, 1994, 52705, -3080, -3080, -3080, + -3080, -3080, -3080, 34201, 2747, -3080, 342, -3080, 1631, -3080, + 342, -3080, -3080, -3080, -3080, -3080, 1574, 23948, 23948, 23948, + 2370, 1994, -3080, 1631, -3080, 2493, 2556, -3080, -3080, -3080, + -3080, -3080, 270, 270, 2757, -3080, 2430, -3080, 2180, 1253, + 66662, 1887, -3080, 1887, 25523, 2523, 222, 45889, 2744, -3080, + 2744, 2744, -3080, -3080, -3080, 40192, -3080, -3080, 2868, -3080, + 248, -3080, -3080, -3080, 1768, 342, -3080, -3080, 2858, -3080, + -3080, -3080, -3080, -3080, 236, -3080, -3080, -3080, 1631, 692, + -3080, -3080, -3080, 1631, 1887, 24473, 2527, -3080, 2598, -3080, + -3080, -3080, -3080, -3080, -3080, -3080 }; /* YYPGOTO[NTERM-NUM]. */ static const yytype_int16 yypgoto[] = { - -3072, -3072, -3072, 1904, 75, -3072, -3072, 128, -3072, 988, - -3072, 108, -797, 506, -3072, 84, 4198, 2606, 4642, 1435, - -520, -888, -1248, 8, 85, -1157, 3, -3072, -3072, -3072, - -3072, -1496, -544, 180, -3072, -3072, -681, -2591, -634, -3072, - -2874, -3071, -3072, -3072, -779, -3059, -2095, 89, -3072, -3072, - 95, 2, -2128, -3072, -1677, 70, -2123, 99, 102, 895, - -3072, -2622, 107, -895, -1195, -951, -1199, -3072, -164, -3072, - 406, 109, 1203, 1947, -3072, 4, -2198, -2926, -645, -3072, - -748, -3072, -401, -3072, -693, -3072, -837, -697, -730, -2854, - -1174, -3072, 1598, -447, -3072, 549, -3072, -2613, -3072, -3072, - 539, -3072, -1171, -3072, -2260, 96, -675, -2651, -2611, -2214, - -910, 174, -683, 157, -2167, -1115, -3072, 561, -3072, -664, - -3072, -905, -2054, 112, -3072, -3072, 1488, -923, -3072, 113, - -3072, 451, -3072, -2170, 449, -2133, 1525, -620, 10, 11, - -3072, -3072, -3072, -3072, -3072, -738, 492, -1228, -3072, 436, - -3072, -3072, -3072, -3072, -234, 161, -2281, 27, 2441, -40, - -33, -3072, -21, -3072, -3072, -3072, 596, -3072, -3072, 17, - 55, 1676, -3072, -1047, -3072, -1689, 684, -3072, 1846, 1848, - -2192, -873, -59, -3072, 642, -1667, -2163, -626, 1105, 1698, - 1661, -3072, 401, -2490, -3072, -606, -3072, 410, -3072, -3072, - 639, 1151, -1572, -1567, -3072, -2255, -3072, -526, -409, -3072, - -3072, -3072, -3072, -3072, -2484, -2486, -610, 1123, -3072, 1712, - -3072, -3072, -3072, -3072, 28, -1537, 2861, 683, -3072, 68, - -3072, -3072, -3072, -3072, 90, -3072, 878, -228, -3072, -456, - -665, -796, 1908, 220, 223, -1824, -17, -304, 452, -3072, - -3072, 454, -2129, -1427, 408, -321, 883, -3072, -60, -1259, - -3072, -1901, -1190, -3072, -3072, -770, 2093, -3072, -3072, -3072, - 2199, 2330, -3072, -3072, 2558, 2796, -3072, -920, 2991, -678, - -1019, 1919, -917, 1923, -937, -925, -941, 1924, 1927, 1928, - 1929, 1931, 1939, 1943, -1555, 5403, -816, 3645, -2183, -3072, - -1424, -1594, 1001, 1015, 1016, 48, -3072, -1410, 210, -3072, - -3072, -3072, -3072, -3072, -2725, -3072, -487, -3072, -478, -3072, - -3072, -3072, -1755, -2650, -1785, -3072, -100, 825, -3072, -3072, - 407, -3072, -3072, -3072, -3072, -1523, -3072, 6710, 720, -3072, - -2038, -3072, -3072, -974, -822, -1162, -1012, -1235, -1937, -3072, - -3072, -3072, -3072, -3072, -3072, -1527, -1790, -387, 779, -3072, - -3072, 877, -3072, -3072, -3072, 100, -1499, -1761, -2149, -3072, - -3072, -3072, 787, 1482, 63, -828, -1646, -3072, -1561, -3072, - -3072, 840, -2412, -3072, -3072, 398, -2660, -3072, -3072, 105, - -3072, -628, -1144, -2493, 523, 16, -3072, 1144, -2589, -3072, - -3072, -724, -2703, -1140, -897, -3072, 116, -3072, 354, 122, - -1692, -3072, 5, -3072, -436, -3072, -3072, -2631, -3072, 131, - 135, 2172, -3072, 1127, -3072, -3072, -3072, -3072, -557, -3072, - -635, -633, -3072, -3072, 21, -901, 1600, -3072, 137, 376, - -3072, 942, -3072, 631, 138, -3072, 2072, -471, 139, 1267, - -3072, -3072, -3072, 12, -596, 359, -3072, 1270, -3072, -3072, - 1733, 658, 141, -3072, 433, 18, -3072, -3072, -3072, 92, - 142, 7, -3038, 146, -2835, -1681, -7, -3072, -3072, -3072, - -719, -3072, -2579 + -3080, -3080, -3080, 2024, 84, -3080, -3080, 243, -3080, 1104, + -3080, 229, -808, 622, -3080, 85, 3904, 2608, 4107, 1047, + -520, -893, -1259, 8, 88, -1157, 7, -3080, -3080, -3080, + -3080, -1518, -429, 296, -3080, -3080, -565, -2606, -518, -3080, + -2977, -3079, -3080, -3080, -664, -3050, -2105, 89, -3080, -3080, + 93, 2, -2151, -3080, -1690, 75, -2134, 102, 104, 1011, + -3080, -2610, 107, -895, -1207, -942, -1215, -3080, -50, -3080, + 521, 112, 1704, 2063, -3080, 3, -2200, -2940, -532, -3080, + -635, -3080, -288, -3080, -582, -3080, -1045, -590, -623, -2869, + -1147, -3080, 1711, -338, -3080, 659, -3080, -2618, -3080, -3080, + 645, -3080, -1172, -3080, -2273, 199, -566, -2422, -2603, -2210, + -917, 282, -573, 259, -2142, -1263, -3080, 668, -3080, -556, + -3080, -889, -2160, 116, -3080, -3080, 1597, -922, -3080, 122, + -3080, 555, -3080, -2136, 556, -2135, 1648, -459, 10, 11, + -3080, -3080, -3080, -3080, -3080, -612, 595, -1225, -3080, 532, + -3080, -3080, -3080, -3080, -133, 244, -2283, 27, 315, -20, + -25, -3080, -18, -3080, -3080, -3080, 699, -3080, -3080, 17, + 61, 1781, -3080, -1035, -3080, -1695, 522, -3080, 1957, 1960, + -2209, -874, -61, -3080, 745, -1676, -2158, -622, 1197, 1775, + 1774, -3080, 489, -2302, -3080, -516, -3080, 332, -3080, -3080, + 740, 1250, -1568, -1571, -3080, -2233, -3080, -428, -315, -3080, + -3080, -3080, -3080, -3080, -2538, -2357, -576, 1221, -3080, 1789, + -3080, -3080, -3080, -3080, 68, -1540, 2967, 787, -3080, 118, + -3080, -3080, -3080, -3080, 198, -3080, 977, -126, -3080, -482, + -683, -800, 2012, -142, 306, -1673, -13, -361, 545, -3080, + -3080, 547, -2116, -1448, 503, -223, 976, -3080, 39, -1264, + -3080, -1883, -1191, -3080, -3080, -667, 1262, -3080, -3080, -3080, + 2655, 2660, -3080, -3080, 2732, 2853, -3080, -913, 2866, 1163, + -1043, 2020, -927, 2021, -936, -932, -941, 2027, 2030, 2031, + 2033, 2036, 2037, 2039, -1557, 5232, -735, 2532, -2188, -3080, + -1439, -1590, 1102, 1103, 1105, 48, -3080, -1410, 210, -3080, + -3080, -3080, -3080, -3080, -2305, -3080, -401, -3080, -393, -3080, + -3080, -3080, -1586, -2939, -1612, -3080, 4057, 908, -3080, -3080, + 495, -3080, -3080, -3080, -3080, -1547, -3080, 6280, 813, -3080, + -2041, -3080, -3080, -981, -837, -517, -1009, -1228, -1946, -3080, + -3080, -3080, -3080, -3080, -3080, -1514, -1791, -57, 872, -3080, + -3080, 964, -3080, -3080, -3080, 183, -1498, -1768, -2143, -3080, + -3080, -3080, 881, 1572, 154, -835, -1642, -3080, -1561, -3080, + -3080, 921, -2410, -3080, -3080, 484, -2661, -3080, -3080, 189, + -3080, -609, -1145, -2495, 64, 25, -3080, 1359, -2591, -3080, + -3080, -727, -2700, -1143, -896, -3080, 126, -3080, 442, 137, + -1672, -3080, 4, -3080, -350, -3080, -3080, -2585, -3080, 139, + 141, 2257, -3080, 1208, -3080, -3080, -3080, -3080, -578, -3080, + -632, -624, -3080, -3080, 20, -904, 1687, -3080, 142, 607, + -3080, 1025, -3080, 810, 146, -3080, 2158, -282, 148, 1353, + -3080, -3080, -3080, 23, -608, 441, -3080, 1355, -3080, -3080, + 1820, 733, 149, -3080, 536, 22, -3080, -3080, -3080, 91, + 150, 5, -3021, 152, -2837, -1691, -7, -3080, -3080, -3080, + -720, -3080, -2581 }; /* YYTABLE[YYPACT[STATE-NUM]]. What to do in state STATE-NUM. If positive, shift that token. If negative, reduce the rule which number is the opposite. If zero, do what YYDEFACT says. If YYTABLE_NINF, syntax error. */ -#define YYTABLE_NINF -2101 +#define YYTABLE_NINF -2102 static const yytype_int16 yytable[] = { - 525, 914, 57, 53, 65, 82, 872, 103, 1244, 719, - 68, 69, 94, 1140, 884, 1207, 525, 77, 99, 1036, - 1314, 858, 963, 523, 718, 1444, 1263, 70, 1825, 1370, - 1317, 1706, 1960, 1500, 1985, 982, 2184, 77, 784, 523, - 1797, 778, 1353, 1172, 888, 1814, 1778, 1813, 1788, 1418, - 2101, 810, 2217, 1416, 2618, 522, 889, 2591, 2608, 2593, - 2140, 1860, 1784, 1830, 856, 1417, 2323, 2020, 525, 525, - 1763, 817, 1359, 1414, 1606, 50, 2090, 2051, 2653, 1376, - 2117, 2118, 2724, 3046, 51, 52, 3015, 745, 2501, 55, - 1818, 523, 523, 1683, 905, 56, 3017, 1892, 1686, 59, - 870, 3044, 60, 810, 810, 2646, 1243, 61, 1249, 63, - 1253, 2607, 66, 67, 2572, 3062, 80, 3059, 973, 965, - 1263, 976, 81, 817, 817, 2503, 851, 1619, 898, 2707, - 2840, 83, 2693, 2694, 2695, 84, 2908, 90, 91, 93, - 2913, 98, 102, 885, 886, 1014, 104, 1583, 1584, 2188, - -527, 1039, -1313, 2348, -1948, 2142, -1372, -1948, -2074, -2074, - -454, 3137, -2088, -2088, 1596, 2237, 1383, -531, 2353, 2349, - -1313, -371, 2240, 2455, -870, 2482, 2483, 1978, -1310, -1310, - 1347, 1437, 1979, 1061, 3134, 2715, 2489, -875, -1294, -1939, - 2493, -875, 821, -1939, -1956, 1428, 1060, 2725, -1956, -1314, - 1691, -2079, -2079, 1347, -1314, 3264, -2097, -2097, -837, -850, - 3251, -865, -1311, -1311, -878, -2099, -2099, -878, 821, 821, - 1060, 983, 2716, 2711, 2132, 1780, 2709, 3268, 1769, 1022, - 1363, 862, 2521, 819, 1023, 1060, 1816, 1687, 1363, 821, - 876, 537, 1639, 1060, 1153, 2132, 876, 1641, 1060, -480, - -527, 2762, 2764, 1828, 2767, 1937, 3345, 1196, 3575, 1780, - 1939, 982, 1829, -229, 1159, 954, 1764, -531, -229, 1263, - 2681, -1131, 3198, 1199, 1712, 1338, 821, 1649, 1615, -1131, - 1798, 2171, 3604, 1801, 1802, 819, 819, 1008, 1160, 2172, - 3550, 1639, -1152, 1024, 3213, 1640, 1641, 3469, 541, 2345, - -1152, 1588, 2476, 2477, 2478, 2801, 1347, 1789, 3181, 3358, - 2732, 1651, 3234, 1977, 1339, 1257, 3429, 1598, 3265, 3, - 4, 881, -665, 1772, 3503, 3388, 1649, 1039, 881, 3456, - 1726, 877, 3542, 3266, 1157, 3389, 2880, 877, 2882, 1014, - 3063, 2784, 1789, 3209, 1803, 2250, 1015, 3037, 1377, 1006, - 1977, 1688, 3599, 3288, 2026, 2155, 2329, 839, 538, 3605, - 1651, 542, 2951, 1709, 3588, 1025, 2181, 1186, 1568, 1639, - 2702, 3493, 821, 1640, 1641, 3195, 1727, 1758, 1759, 2773, - 2119, -2073, -2073, 2649, 2436, 2922, 2212, 1762, 1937, 1723, - -807, 1192, 1938, 1939, 113, 3171, 3164, 3207, 3166, 105, - 2881, 1026, 3528, 3437, 1649, 2199, 2428, 1780, 1808, 1044, - 879, 3233, 2657, 1487, 2583, 2059, 1639, 1027, 1781, 535, - 1045, 1873, 3515, 3258, 2065, 3518, 3374, 1028, 2465, 1832, - 2200, 2901, 1809, 3172, 3270, 1812, 2952, 2456, 1651, 3325, - -527, 3327, 2964, 1937, 1728, 3259, 2921, 1938, 1939, 106, - 3196, 3606, 1789, 1525, 2904, 1317, 1161, -531, 1162, 840, - 3504, 1029, 3557, 1392, 1393, 1488, 3438, 1194, 3576, 1187, - 1819, 2213, 3208, 1692, 2646, 1689, 2646, 1348, 114, 2156, - -685, 880, 1217, 1774, 2466, 1651, 1016, 3583, 1218, 1804, - 992, 3073, 2832, 1340, 2654, 1729, 2157, 1724, 2902, 1805, - 1348, 2158, 3390, 1154, 3210, 788, 3064, 1030, 1021, 1258, - 3543, -527, 3455, 1790, 1031, 3600, 2182, 2275, 3581, 2650, - 2953, 2330, 3589, 3473, 3267, 1710, -807, 2437, -531, 3088, - 3356, 1606, 2774, 1400, 1401, 989, 559, 2438, 2538, 2159, - 1787, 3340, 750, 546, 3430, 972, 3505, 1831, 1790, 1600, - 789, 2337, 1568, 826, 2023, 3577, 1032, 1730, 2346, 881, - 3350, 3401, 1467, 1765, 2140, 820, 929, 869, 869, 2061, - 3545, 550, 878, 3067, 1817, 1033, 863, 955, 2516, 1155, - 1787, 1760, 3245, 3346, 3578, 1708, 719, 3334, 1630, 1583, - 1584, 2497, 1054, 1219, 3079, 2133, 2328, 1761, 3055, 2266, - 3052, 951, 1775, 1348, 3286, 2655, 3607, 3516, 2682, 1341, - 3068, 1701, 3199, 3038, 1596, 1787, 2574, 2801, 1935, 1936, - 963, 2251, 3551, 3535, 1956, 1894, 1969, 3517, 2467, 2090, - -527, 1898, 901, 2860, 1986, 2595, 1579, 3366, 2771, 1349, - -1131, 2541, 1568, 982, 1034, 2394, 3015, -531, 3558, 3417, - 2173, 2237, 1406, 1407, 865, 2008, 3017, 2621, 1790, 2142, - 2795, -1152, 1352, 1585, 2717, -1313, 2423, -1948, 1814, -527, - -1948, -527, 2187, 2610, 2072, 2073, 1593, -1372, 2429, 1593, - 2400, -454, -454, -1313, 2723, 2728, -531, -870, -531, 1313, - 3337, 1601, -371, 2616, 1601, 3338, 2160, 1102, 1103, 912, - -875, -1294, -1939, 913, 539, 1634, -1939, -1956, 2457, 2707, - 882, -1956, -1314, 1602, 872, 2462, 1602, -1314, 3189, 3308, - 1002, 1586, 1591, 1895, -865, 1787, 1902, 1603, 2816, 976, - 1605, 1684, 2189, 912, 3454, 1367, 1368, 913, 2243, 1808, - 1263, 2113, 1263, 1367, 1368, 1672, 1588, 981, 3222, 3223, - 1220, 3462, 874, 1163, 2058, 1615, 2494, 2271, 1954, 3461, - 2494, 3248, 1220, 1809, 1615, 872, 1598, 3262, -229, -229, - 77, 784, 1610, 2703, 2704, 978, 2925, 2931, 2093, 3536, - 1594, 1595, 2785, 2786, 2787, 2788, 2675, 525, 2328, 2515, - 1975, 1669, 1670, 1671, 1672, 1020, 2889, 821, 525, 2676, - 2049, 1726, 3180, 2932, 1059, 525, 859, 1937, 3537, 2114, - 523, 1938, 1939, 1222, 2271, -2101, -2101, -2101, 2272, 3263, - 1780, 523, 1192, 3357, 888, 2656, 1601, 2657, 523, 1208, - 1893, 1783, 2463, 1004, 525, 525, 889, 1611, 3083, 3423, - 3526, 3424, 817, 1158, 3240, 1223, 3044, 1727, 1602, 2301, - 2691, 2890, 875, 817, 108, 2244, 2692, 2658, 525, 2304, - 817, 1158, 2307, 2385, 2926, 3182, 1568, 1667, 1668, 1669, - 1670, 1671, 1672, 1005, 2463, 2643, 3249, 57, 53, 65, - 82, 931, 103, 932, 1164, 68, 69, 94, 1951, 1952, - 1953, 1954, 77, 99, 2802, 890, 3215, 1439, 1194, 1789, - 2300, 1789, 70, 3259, 3220, 525, 719, 3015, 3122, 1306, - 525, 3124, 3586, 3126, 1639, 3475, 1224, 3017, 891, 912, - 1904, 1173, 3145, 1626, 2143, 1060, 1627, 2135, 2584, 3031, - 2927, 3032, 2928, 3489, 3490, 851, 851, 1789, 851, 2470, - 851, 1949, 1950, 1951, 1952, 1953, 1954, 1195, 2358, 1649, - 50, 3601, 2144, 3611, 893, 2324, 2325, 2326, 2405, 51, - 52, 1568, 1306, 3319, 55, 933, 1729, 934, 2393, 3320, - 56, 2263, 2395, 981, 59, 2397, 3370, 60, 872, 908, - 525, 525, 61, 1651, 63, 3530, 525, 66, 67, 525, - 525, 80, 525, 525, 525, 525, 3343, 81, 2299, 2935, - 77, 784, 2851, 1359, 819, 1316, 83, 2090, 2410, 525, - 84, 525, 90, 91, 93, 819, 98, 102, 2310, 821, - 525, 104, 819, 2317, 109, 3330, 1789, 1822, 1730, 2680, - 1361, 910, 523, 1362, 523, 110, 2417, 525, 1306, 1571, - 1960, 2418, 2938, 523, 810, 1985, 1004, 1601, 917, 912, - -1948, 3450, 2596, 913, 2597, 810, 1400, 1401, 1893, 525, - 1968, 872, 1970, 1971, 817, 2684, 817, 2145, 1192, 1602, - 111, 1906, 2334, 1193, 918, 817, 1060, 2147, 525, 949, - 1402, 1403, 2302, 1603, 1464, 940, 1005, 2305, 1945, 525, - 525, 525, 2696, 525, 525, 1479, 719, 1630, 1568, 916, - 2419, 1814, 2627, 2051, 1439, 1790, 2074, 1790, 912, 2275, - 3155, 1620, 1626, 2075, 2076, -608, 3375, 2077, 2078, 2079, - -608, 112, 2430, 2431, 2432, 2433, 2434, 2435, 928, 525, - 2439, 2440, 2441, 2442, 2443, 2444, 2445, 2446, 2447, 2448, - 919, 2619, 3433, 1790, 1194, 3280, 1060, 525, 525, 935, - 2461, 2683, 2616, 942, 2688, 1714, 1715, 941, 1721, 1601, - -209, 940, 2175, 1720, 1158, 939, 2176, 889, 889, 920, - 889, 3376, 1787, 947, 1787, 1406, 1407, 953, 2416, 1847, - 3377, 1602, 2420, 525, 956, 2422, 1699, 525, 525, 1700, - 982, -608, 943, 1195, 1577, 1605, 46, 525, 525, 525, - 3348, 2733, 525, 957, 3378, 2942, 2802, 2741, 1619, 116, - 1787, 959, 921, 536, 2143, 2375, 23, 2376, 1848, 1147, - 1148, 749, 1150, 1571, 1152, 952, 819, 2719, 819, 1815, - 2148, 1899, 1790, 941, 1900, 838, 958, 819, 2519, 852, - -608, 2149, 2144, 1475, 912, 2811, -1294, 1568, 913, 1482, - 1472, 1480, 969, 3253, 2943, 1485, 942, 2564, 1306, 1568, - 987, 1048, 1049, 1050, 989, 2022, 1053, 1306, 2023, 1007, - 2047, 968, 2944, 2048, 988, 3130, 23, 3379, 945, 2342, - 541, 2411, 2343, 2449, 2412, 2565, 2450, -2070, -2070, 1568, - 3380, 1306, -2071, -2071, 2495, 943, 1568, 2496, 2471, 1787, - 2472, -2101, -2101, -2101, 1850, 1949, 1950, 1951, 1952, 1953, - 1954, 998, 2498, 1571, 2592, 2496, 2562, 2559, 2560, 2671, - 990, 1854, 2672, 1855, 1857, 2677, 1858, 993, 2678, 719, - 944, 996, 1847, 2744, 1439, 1439, 2023, 1568, 719, 922, - 1439, 1568, 2796, 542, 1887, 2808, 2803, 1568, 2496, 2809, - 923, 3084, 2048, -2072, -2072, 981, 2665, 2145, 2667, 26, - 27, 28, 2146, 2812, 1009, 2814, 2813, 2147, 2813, 997, - 1568, 1848, 719, 2945, -2075, -2075, 3597, 525, 77, 784, - 2090, 945, 2946, 978, 999, 924, 1025, 1909, 2896, 869, - 2615, 2897, 3053, -2076, -2076, 2412, 3584, 3560, 3585, 3054, - 3077, 3085, 2343, 3078, 3086, 2566, 1849, 2473, 925, 2474, - 2567, 1217, 3572, -2077, -2077, 3146, 3013, 1218, 2048, 26, - 27, 28, 1026, 2630, 1461, 1472, 33, 525, 525, 1468, - 1469, 1470, 1000, 525, 3281, 525, 926, 2048, 1473, 3610, - 525, 525, 525, 525, 2714, 2668, 1491, 2670, 1028, 3282, - 1495, 3314, 2496, 1001, 2048, 525, 525, 1850, 523, 2962, - 823, 3030, 2955, 38, 525, 3321, 525, 3608, 2023, 525, - 3331, 2919, 3609, 3332, 525, 1315, 525, 525, 3364, 525, - 1002, 2412, 2954, 525, 2963, 1041, 33, 523, 1052, 523, - 817, 3381, 523, 1046, 3382, 3365, 40, 523, 2343, 810, - 523, 810, 523, 1051, 810, 3398, 523, 43, 2048, 810, - 3459, 3040, 810, 2412, 810, 1054, 2833, 2834, 810, 817, - 2148, 817, 1219, 38, 817, 546, 2918, 972, 2920, 817, - 3471, 2149, 817, 3472, 817, -2078, -2078, 1571, 817, 1999, - 1230, 2000, 3497, 3541, 2002, 3498, 3472, 1055, 3582, 2006, - 909, 3472, 2009, 550, 2010, 1151, 40, 3419, 2014, 3420, - 1231, 1025, 46, 2568, 1189, 1167, 1191, 43, 1619, 525, - 525, 2822, 2824, 2825, 2569, 2820, 2050, 1032, 525, 525, - 2183, 1615, 1174, 2052, 2053, 2056, 525, 2821, 2823, 821, - 77, 2057, 1175, 525, 2819, 1177, 1474, 1026, -2080, -2080, - 2054, -2081, -2081, 2080, 2081, 2082, 1232, 2083, 2084, 2085, - 2086, 2087, 2088, 1481, -2082, -2082, 1181, 541, 1178, 719, - 525, 1182, 46, 1028, 525, 1439, 1179, 525, -2083, -2083, - 2238, 2239, 1571, 525, 525, 525, 525, 525, 525, 525, - 525, 719, -1358, 1217, 1209, 525, 525, 525, 1190, 1218, - 525, 1212, 819, 1214, 525, 1215, 2129, 525, 525, 525, - 525, 525, 525, 525, 525, 525, -2084, -2084, 525, 1216, - 523, 1228, 2754, -2085, -2085, 525, 1229, 1306, 1246, 1220, - 542, 819, 2184, 819, 1250, 982, 819, -2086, -2086, 2219, - 1568, 819, -2087, -2087, 819, 525, 819, 869, -2089, -2089, - 819, 889, 1233, -2090, -2090, -2091, -2091, 3227, -2092, -2092, - 14, 15, 2616, -2093, -2093, -2094, -2094, 1254, 525, 1309, - 2113, 1164, -2096, -2096, 1255, 879, -2098, -2098, 1312, 525, - 525, -2100, -2100, 1313, 2357, 1834, 1835, 1318, 1221, 1320, - -609, 1324, 1222, -660, -660, -609, 3190, -664, -664, -663, - -663, 1234, 1032, 1334, 1219, 1336, 23, 1337, 2864, 2865, - 1344, 1235, 1217, 3186, 3187, 2962, 2746, 2748, 1218, 1571, - 1345, 1474, 1351, 1236, 1223, 1406, 1407, 1354, 719, 1355, - 719, 3568, 3569, 3594, 3595, 1695, 1696, 2635, 2636, 1360, - 1378, 1455, 1458, 2287, 1379, 2291, 880, 1465, 1384, 1442, - 1457, 1476, 1217, 2912, 1477, 1237, 1483, 1484, 1218, 1494, - 2026, 1490, 3244, 3047, 1573, 1496, -609, 1574, -841, -848, - 525, 1576, 1585, 3036, 1306, 46, 1568, 525, 525, -685, - 3065, 3076, 1589, -686, -838, -839, -842, 1599, 1439, 1439, - 1439, 1439, 1439, 1439, -840, 1224, 1439, 1439, 1439, 1439, - 1439, 1439, 1439, 1439, 1439, 1439, 1600, 3559, 1621, 1239, - 3157, 3561, 546, 1631, 972, -609, 3307, 3397, 1306, 1633, - 1678, 1680, 1682, 1219, 881, 1896, 1217, 1897, 1702, 1694, - 1707, 1703, 1218, 1711, 1240, 1713, 719, 549, 1193, 1195, - 550, 1748, 1568, 1306, 525, 1750, 1752, 1230, 2379, 26, - 27, 28, 981, 1242, 1217, 1767, 1786, 1794, 1785, 1787, - 1218, 1220, 1792, 1219, 1793, 1799, 3602, 1231, 1571, 1806, - 1811, 1807, 525, 525, 1821, 525, 113, 1827, 1837, 1838, - 1571, 525, 525, 525, 525, 525, 525, 1839, 1843, 525, - 525, 525, 525, 525, 525, 525, 525, 525, 525, 1852, - 1846, 1853, 1861, 1862, 525, 525, 3080, 1865, 525, 1869, - 1571, 1868, 1871, 1232, 1872, 525, 33, 1571, 1874, 1875, - 1247, 1889, 1888, 2616, 1222, 1893, 3013, 35, 1901, 1926, - 1928, 1929, 1931, 1934, 1957, 1996, 1966, 1219, 1965, 525, - 1973, 1976, 2001, 1998, 525, 2007, 525, 1568, 2011, 37, - 525, 2012, 2013, 38, 3218, 2018, 1248, 2021, 1571, 1579, - 1586, 2024, 1571, 1591, 525, 1219, 1306, 523, 1571, 3547, - 3397, 2025, 2029, 523, 2030, 882, 2061, 2027, 2028, 810, - 1220, 2060, 1060, 1439, 1439, 810, 40, 1639, 2094, 2098, - 2095, 1571, 2102, 2108, 3228, 3229, 2105, 43, 2131, 817, - 2107, 3362, 2109, 525, 525, 817, 2152, 1985, 2151, 1233, - 2154, 2110, 3397, 2178, 44, -540, 2179, 2185, 2197, 2484, - 1220, 2198, 880, 1022, 2218, 2487, 2215, 1224, 1023, 2202, - -540, 3121, 2228, 2891, 2229, -540, 2227, 2253, 45, 1251, - 2230, 525, 2231, 1222, 2232, 525, 2249, 1568, 872, 2254, - 525, 525, 46, 2268, 2270, 2340, 2257, 2269, 1234, 2264, - 2344, 3397, 881, 2350, 2359, 2361, 2362, 2363, 1235, 2365, - 2366, 2380, 3206, 1619, 1372, 1252, 525, 525, 2381, 2262, - 1236, 525, 2364, 1222, 3452, 2383, -540, 1024, 23, 2388, - 2386, 2389, 2390, 2387, 1220, 2392, 2413, 525, 2396, 1439, - 525, 525, 525, 2421, 1962, 1937, -540, 3413, 2451, 1961, - 2458, 2459, 1237, 2460, 2464, 1223, 2488, 2468, 525, 719, - 2469, 2480, 1220, 2486, 523, 525, 2500, 2502, 525, 2507, - 2511, 1568, 2508, 2509, 2512, 2518, 2513, 2514, 2545, 2517, - 2525, 2526, 2531, 2529, 1611, 525, 1224, 2528, 2530, 2532, - 2535, 523, 2533, 2308, 2534, -540, 2558, 1222, 525, 1025, - 2536, 819, 3204, 810, -540, 2555, 1239, 819, 523, 2563, - 2579, 2587, 2598, 985, 2541, 525, 525, 2556, 2570, 2580, - 810, 2315, 2585, 817, 2601, 1222, 1224, 3013, 2586, 2309, - 2603, 1240, 525, 2599, 525, 1026, 2604, 2611, 2609, 2612, - 817, -666, 2622, 2625, -1830, 1043, 2623, 525, 541, 2626, - 1242, 1027, 2629, 2633, 1636, 3279, 2634, 2316, 2639, 1765, - 2892, 1028, 2637, 2642, 2645, 719, 719, 719, 2641, 2664, - 1149, 26, 27, 28, 2666, 2697, 2698, 2699, 1568, 2713, - 2287, 2287, 2287, 2679, 2267, 1372, 2685, 2718, 2686, 2687, - 1814, 2700, 3351, 2712, 2276, 1029, 2279, 2730, 2731, 2290, - 1224, 2735, 2734, 2738, 525, 2294, 2742, 2296, 2751, 872, - 1306, 542, 1568, 1593, 2761, 2769, 2003, 2772, 823, 2775, - 2303, 2779, 2792, 2778, 2793, 2306, 2780, 2804, 1224, 2311, - 2312, 2313, 2314, 2781, 2318, 2319, 2805, 2818, 33, 2829, - 1854, 1030, 1855, 1857, -1830, 1858, 719, 2826, 1031, 982, - 2810, 1571, 2837, 2847, 2836, -540, 2856, 2848, 2935, 2858, - 2877, 1909, 2862, 2886, 2936, 1372, 2905, 2859, 1372, 1372, - 2917, 525, 2872, 2909, 2871, 38, 2950, 2937, 2966, 2883, - 1630, 2879, 2903, 2923, 544, 819, 525, 981, 3057, 2907, - 1032, -1830, 2924, 2930, 1568, 719, 3033, 3034, 3035, 3042, - 3039, 2938, 819, 2939, 3043, 1369, -1830, 3050, 40, 1033, - 1909, -1830, 3051, 3056, 3061, 1412, -1830, 3069, 3070, 43, - 3074, 2343, 3081, 3082, 912, -1830, 3087, 1177, 913, 3109, - -1830, 71, 2113, 525, 3113, 3117, 44, 1568, -540, 3107, - 3127, 3128, 3131, 1315, 3132, 3158, 3165, 3168, 3170, 3177, - -208, 71, 3179, -540, 809, 3402, 523, 3404, -540, 3183, - 45, 3412, -1830, 3184, 1439, 1439, 3185, 3191, 71, 3197, - 3201, 525, 3193, 3192, 2893, 3202, 3211, 871, 1034, 3203, - 3214, 3216, -1830, 2004, 3217, 3221, -2069, 1571, 817, 1158, - -2070, 2940, 872, 546, -2071, 547, 3414, -2072, 3416, -2073, - 3236, 1905, 1907, 3534, 525, 3237, 809, 809, 887, -540, - 525, 525, 3495, 3238, 3252, -2074, 2874, -2075, -2076, -2077, - -2078, 550, 3235, -2080, -2081, 525, -2082, -2083, -2084, -540, - 872, -1830, 71, 3254, -1830, 1632, 3499, -2085, -2086, 3488, - -1830, 525, -2087, -2089, 525, 1635, 525, 1568, -2090, -2091, - -2092, -2093, -2094, 1571, 525, -2095, 3239, 525, 525, 2941, - -2096, -2097, 525, 525, 2942, -2098, -2099, 1685, -2100, 525, - -1311, 3241, 3242, 3250, 3269, 3255, 1690, 3483, -540, 3271, - -1830, 2911, 3257, 3273, 525, 3274, 3277, -540, 3283, 3287, - 3284, 3289, 2050, 3295, 525, 3301, 3298, 3302, 3291, 2052, - 2053, 2056, 3297, 521, 532, -1830, 77, 2057, 3303, 557, - 3306, 3310, 1230, 2943, 525, 557, 2054, 3309, 3313, 807, - 3328, 822, 2895, 3329, 3333, 825, 557, 834, 3336, 3339, - 834, 2944, 1231, 854, 854, 3353, 3341, 854, 3354, -1310, - 557, 557, 3361, 3363, 3369, 3371, 3372, 3385, 3386, 3387, - 819, 3406, 3399, 3400, 3403, 719, 3409, 3415, 3016, 719, - 3421, 719, 1439, 859, 3407, 3441, 3210, 3445, 3447, 3448, - 2287, 807, 807, 525, 3018, 525, 2291, 3464, 1232, 3451, - 1022, 3465, 3466, 3457, 3469, 1023, 3474, 1439, 3476, 3478, - 3161, -1830, 3481, 3482, 3487, 1230, 3485, 854, 3486, 3072, - 3492, -1830, 3494, 541, 854, 557, 854, 854, 854, 1854, - 1896, 1855, 1857, 3496, 1858, 1231, 3501, 3506, 3512, 3513, - 3514, -1830, 3519, -1830, -1830, 2066, 3520, 541, -1358, 3521, - 3045, 3539, 2945, 3529, 3531, 3523, 3533, 2096, -540, 2097, - 3549, 2946, 3552, 3554, 1024, 3570, 3573, 872, 2958, 3550, - 3551, 3587, -1358, 3598, 3592, 525, 3603, 3612, 1571, 3066, - -1830, 1232, 2956, -1830, -1830, -1830, 542, 2115, 3613, 1180, - 2969, 2295, 2957, 2662, 1233, 525, 525, 2965, 3428, 2898, - 525, 3527, 3491, 525, 3596, 2398, 3224, 2753, 1059, 1156, - 542, 1937, 3510, 3580, 3349, 1938, 1939, 3548, 2378, 1940, - 1941, 1942, 3555, 1908, 3574, 1777, 3384, 912, 1568, 2644, - 525, 913, 2669, 3546, 3553, 2934, 1025, 3060, 2640, 23, - 543, 3544, 1891, 1234, 1203, 3019, 2747, 2745, 1439, 2708, - 525, 2958, 1851, 1235, 3278, 2628, 525, 525, 2758, 544, - 1704, 525, 1571, 872, 971, 1236, 525, 2614, 1744, 525, - 525, 1462, 1026, 1463, 525, 1306, 2256, 1233, 525, 3041, - 2783, 2624, 525, 722, 914, 3532, 2224, 3477, 1027, 525, - 2236, 2236, 3405, 2255, 811, 2600, 1059, 1237, 1028, 1937, - 3116, 2492, 3305, 1938, 1939, 523, 1745, 1940, 1941, 1942, - 1429, 2737, 2777, 2776, 2807, 3355, 3226, 810, 545, 1413, - 2407, 2506, 1749, 1415, 1419, -208, 1234, 1420, 1421, 1422, - 3480, 1423, 1029, 525, 2408, 2409, 1235, 817, 3479, 1424, - 723, 525, 545, 1425, 2553, 2831, 2617, 2577, 1236, 2522, - 2959, 1239, 2575, 1204, 1372, 1987, 724, 1464, 3140, 3169, - 525, 2554, 2850, 2884, 1372, 3141, 3467, 1372, 546, 1571, - 547, 986, 1903, 2499, 2338, 1211, 1240, 2193, 1030, 2899, - 1237, 2195, 26, 27, 28, 1031, 0, 548, 2689, 0, - 71, 1439, 546, 549, 972, 1242, 550, 1823, 0, 1943, - 0, 0, 0, 3016, 0, 725, 0, 0, 0, 0, - 0, 548, 0, 0, 0, 726, 0, 549, 0, 0, - 550, 0, 1944, 0, 0, 0, 0, 1032, 727, 0, - 0, 0, 0, 728, 1239, 0, 3260, 0, 0, 0, - 0, 0, 0, 0, 0, 719, 1033, 0, 0, 33, - 0, 0, 0, 0, 0, 0, 0, 23, 0, 1240, - 1909, 0, 729, 1372, 0, 0, 0, 872, 0, 0, - 0, 0, 0, 525, 0, 0, 0, 0, 1242, 0, - 2960, 981, 0, 2961, 525, 1571, 38, 2252, 1638, 0, - 0, 1639, 1945, 0, 3261, 1640, 1641, 0, 0, 819, - 525, 0, 0, 0, 0, 730, 0, 0, 0, 731, - 1944, 0, 0, 0, 0, 1034, 0, 0, 0, 40, - 1205, 0, 0, 0, 0, 0, 1649, 0, 1571, 0, - 43, 0, 0, -2101, 525, 0, 0, 2190, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 44, 0, 1560, - 0, 525, 525, 0, 0, 525, 854, 525, 0, 0, - 1651, 854, 0, 0, 854, 0, 0, 2914, 0, 0, - 2915, 45, 557, 544, 0, 23, 0, 0, 0, 732, - 1945, 0, 525, 0, 0, 46, 2510, 0, 0, 0, - 0, 0, 0, 1787, 733, 0, 0, 2967, 0, 0, - 26, 27, 28, 0, 71, 871, 525, 1439, 0, 2259, - 2261, 0, 3020, 3021, 3022, 3023, 3024, 3025, 3026, 3027, - 3028, 3029, 0, 0, 0, 2561, 0, 0, 0, 734, - 0, 0, 735, 0, 0, 0, 0, 0, 3016, 0, - 0, 0, 0, 736, 0, 991, 737, 0, 0, 0, - 0, 0, 0, 0, 0, 1562, 1003, -2101, 0, 0, - 719, 0, 0, 1019, 738, 0, 0, 33, 2320, 0, - 0, 0, 0, 0, -2101, 1909, 0, 0, 739, -2101, - 525, 2335, 2335, 0, 740, 741, 0, 0, 0, 3367, - 525, 0, 525, 0, 525, 742, 0, 0, 525, 0, - 525, 743, 525, 523, 38, 1946, 1947, 1948, 887, 1949, - 1950, 1951, 1952, 1953, 1954, 0, 525, -2101, 26, 27, - 28, 525, 0, 525, 0, 0, 71, 0, 0, 744, - 0, 525, 0, 1560, 0, 817, 0, 40, 0, 0, - 0, 0, 0, 2594, 719, 0, 0, 0, 43, 525, - 0, 0, 0, 0, 1369, 0, 0, 0, 0, 3434, - 2415, 0, 961, 557, 557, 44, 3425, 0, 3427, 0, - 0, 1059, 1660, 0, 1937, 0, 2620, 2620, 1938, 1939, - 0, 0, 1940, 1941, 1942, 33, 1563, 0, 0, 45, - 0, 0, 0, 1946, 1947, 1948, 525, 1949, 1950, 1951, - 1952, 1953, 1954, 46, 984, 532, 525, 0, 3460, 0, - 521, 0, 854, 0, 0, 0, 0, 0, 525, 0, - 0, 807, 38, 1560, 3463, 1011, 1011, 0, 807, 0, - 0, 1011, 1038, 525, 71, 0, 0, 0, 0, 1562, - 0, 0, 0, 0, 834, 834, 834, 0, 0, 834, - 0, 525, 0, 0, 0, 40, 523, 1106, 1106, 834, - 834, 0, 834, 0, 834, 0, 43, 809, 0, 1003, - 3205, 0, 0, 0, -2101, 525, 854, 0, 809, 0, - 0, 0, 557, 44, 0, 0, 0, 0, 817, 0, - 525, 0, 0, 0, 854, 0, 0, 819, 523, 3016, - 0, 719, 0, 0, 0, 0, 0, 45, 854, 822, - 0, 1638, 0, 1578, 1639, 0, 3434, 0, 1640, 1641, - 0, 46, 0, 0, 525, 1590, 0, 0, 0, 1562, - 817, 0, 0, 0, 0, 0, 0, 0, 525, 525, - 525, 0, 0, 854, 1311, 0, 0, 523, 0, 1649, - 3556, 0, 1617, 0, 0, 1322, -2101, 0, 0, 854, - 854, 854, 854, 0, -1832, 525, 0, 0, 0, 0, - 1563, 0, 0, 0, 0, 1343, 3571, 0, 0, 817, - 0, 0, -2101, 1651, 0, 1944, 0, 0, 0, 1667, - 1668, 1669, 1670, 1671, 1672, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 525, 1011, 1038, 0, - 854, 0, 0, 1436, 1565, 0, 0, 0, 0, 1011, - 1011, 0, 0, 0, 0, 0, 557, 0, 0, 0, - 0, 0, 807, 0, 807, 0, 0, 0, 0, 887, - 887, 0, 887, 807, 0, 0, 0, 1560, 2571, 0, - 819, 0, 0, 557, 0, 1945, 0, 0, 0, 0, - 1563, 0, 2815, 2817, -1832, 0, 1059, 0, 0, 1937, - 1575, 1912, 0, 1938, 1939, 0, 0, 1940, 1941, 1942, - -2101, 0, 0, 0, 0, 0, 0, 0, 1059, 0, - 0, 1937, 819, 0, 2853, 1938, 1939, -2101, 0, 1940, - 1941, 1942, -2101, 0, 0, 0, 0, 0, 0, 0, - 0, -1832, 0, 0, 0, 0, 2854, 1638, 1913, 0, - 1639, 557, 0, 0, 1640, 1641, -1832, 0, 0, 0, - 0, -1832, 0, 0, 2673, 0, -1832, 0, 0, 1914, - -2101, 819, 1560, 0, 0, -1832, 0, 3352, 0, 0, - -1832, 0, 0, 1562, 0, 1649, 0, 1915, 0, 0, - 0, 1916, -2101, 0, 0, 0, 0, 0, 0, 3359, - 3360, 0, 0, 0, 1698, 0, 0, 0, 0, 0, - 0, 0, -1832, 0, 1917, 0, 2705, 1918, 0, 1651, - 557, 557, 0, 3373, 0, 1660, 0, 854, 1565, 0, - 0, 0, -1832, 1919, 2720, 0, 0, 0, 0, 0, - 0, 0, 71, 0, 0, 0, 0, 0, 0, 0, - 1436, 1106, 1106, 0, 0, 0, 0, 0, 0, 1372, - 0, 0, 854, 1776, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 854, 0, 0, 1562, 1369, - 0, -1832, 1566, 0, -1832, 0, 0, 0, 0, 2759, - -1832, 2760, 854, 0, 0, 2765, 854, 2768, 1946, 1947, - 1948, 1824, 1949, 1950, 1951, 1952, 1953, 1954, 0, 1560, - 1944, 0, 0, 0, 1563, 0, -2101, 0, 1565, 0, - 0, 0, 0, 0, 0, 0, 1920, -2101, 0, 0, - -1832, 0, 1944, -2101, 1921, 0, 0, 0, -2101, 0, + 525, 914, 57, 65, 82, 103, 1140, 53, 1244, 719, + 68, 69, 884, 1315, 1207, 1036, 525, 77, 1445, 963, + 1987, 1263, 99, 94, 718, 858, 872, 70, 1172, 1815, + 1707, 1826, 523, 1962, 982, 1814, 1501, 77, 1371, 1798, + 778, 2186, 784, 1354, 2219, 1779, 1318, 2022, 523, 1419, + 1607, 2103, 888, 2092, 1417, 522, 2053, 1862, 1418, 889, + 2325, 2620, 1785, 1415, 856, 2142, 2610, 1764, 525, 525, + 1831, 817, 2593, 1360, 2595, 1789, 1377, 559, 2655, 2119, + 2120, 2503, 2726, 750, 50, 51, 3017, 1894, 52, 55, + 1819, 810, 745, 56, 826, 1243, 3019, 1249, 905, 1253, + 523, 523, 59, 2609, 60, 1684, 870, 61, 869, 869, + 1687, 3046, 63, 2574, 3061, 1263, 66, 2695, 2696, 2697, + 1620, 973, 67, 817, 817, 851, 80, 1014, 898, 3064, + 976, 3048, 2648, 1039, 2842, 2709, 2910, 81, 965, 83, + 2915, 84, 90, 810, 810, 2505, 91, 2190, 93, 98, + 102, 1384, 104, -1373, 1584, 1585, -1949, 2144, 2351, -454, + 2355, 1688, 1364, 821, -2089, -2089, -1949, 1060, -527, 2242, + 2239, 1597, -531, 901, 2457, 2350, 1060, 1980, -371, -1314, + 3139, -1940, 1981, 1061, 537, 3136, 1348, -1311, -1311, -2080, + -2080, 1429, 3266, 885, 886, -1957, -1295, -1315, -2075, -2075, + 983, -1314, 2713, -2098, -2098, -1312, -1312, -875, -870, 1692, + 3253, -875, 821, -1940, -1957, 1153, 1060, 2711, -1315, -837, + -850, 2717, 2718, 1364, 2727, 3471, 2656, 3270, 1060, -865, + 1770, 2134, 821, 819, 2937, 821, -878, 2704, 862, 821, + 2134, -2100, -2100, -480, 3200, -878, 3552, -1132, 1939, 1640, + 2173, 1765, 1159, 1941, 1642, -1132, 1829, 1348, 2174, 2523, + 982, 1196, 1438, 1616, 1263, 1830, 1939, 1713, -527, 23, + 1940, 1941, -531, 3347, 1348, 1689, 1060, 2940, 2764, 2766, + 2252, 2769, -1153, -229, 1650, 819, 819, 1008, -229, 1799, + -1153, 1790, 1802, 1803, 954, 3183, 881, 3360, 2478, 2479, + 2480, 538, 2803, 3431, 821, -665, 1640, 1199, 1339, 1039, + 1641, 1642, 2734, 1979, 1790, 71, 2347, 3236, 1652, 1059, + 3537, 1014, 1939, 1006, 1710, 1773, 1940, 1941, 2484, 2485, + -2102, -2102, -2102, 3577, 1157, 71, 1160, 2657, 809, 2491, + 3606, 1650, 2183, 2495, 3166, 1257, 3168, 1340, 3458, 3065, + 1979, 1378, 71, 1781, 2028, 1781, 2786, 2438, 2331, 1790, + 2882, 871, 2884, 3544, 1817, 3601, 2683, 3, 4, 881, + 1759, 1760, 1763, 3211, 2924, 1652, 2121, 1526, 2157, 2245, + 2467, 2651, 3495, 2214, 3390, 2883, 3267, 3039, 3590, 3197, + 809, 809, 887, 839, 3391, 3209, 3530, 1640, 1015, 1690, + 1640, 3268, 1611, 3290, 1589, 1488, 113, 3264, -807, 2585, + 2903, 3235, 26, 27, 28, 1875, 71, 3607, 535, 1813, + 1599, 2430, 3475, 876, 2953, 105, 3376, -2074, -2074, 1834, + 876, 2201, 1650, 992, 1044, 3350, 2468, 1578, 788, 46, + 2944, 3517, 1820, 1640, 3520, 1045, 2923, 1641, 1642, 1939, + 3173, 1021, 2458, 1940, 1941, 3261, 2202, 1489, -527, 3265, + 2775, 2906, -531, 3377, 3198, 1186, 1652, 1612, 2215, 1652, + 3210, 3260, 1318, 3559, 1154, 106, 3538, 2904, 1650, 33, + 3075, 3585, 3272, 1349, 879, 1775, 1711, 1823, 3174, 2945, + 114, 2834, 2184, 1192, 1220, 840, 2246, 1791, 2954, 3457, + 2439, 2648, 2158, 2648, 1161, 3539, 1162, 2946, 1607, 3608, + 2440, 789, 1652, 2277, 877, 3066, 38, 2652, 3378, 2159, + 1791, 877, 1833, 2332, 2160, 3215, 1341, 3379, 3602, -527, + -685, 3432, 1601, -531, 3212, 3358, 1468, 3583, 1016, 1258, + 2540, 3545, 1788, 3578, -807, 820, 3591, 3560, 1766, 40, + 1155, 3380, 3288, 3090, 1349, 880, 2253, 2658, 3547, 2659, + 43, 3392, 2161, 1054, 1788, 1791, 929, 1187, 865, 1194, + 2142, 1349, 2499, 1709, 3336, 2348, 3247, 3057, 3553, 2339, + 2469, 989, 2955, 863, 3201, 1761, 719, 1788, 1631, 2660, + 1702, 3054, 3269, 874, 3518, 2025, 2063, 1584, 1585, 2268, + 3348, 951, 2135, 1947, 1776, 2330, 955, 2092, 2947, 3069, + 3070, 2576, 1971, 2776, 2803, 46, -1132, 2948, 963, 2175, + 949, 3081, 1597, 1896, 3381, 3588, 2862, 3519, 1988, 1900, + 3579, 1762, 1788, 881, 3368, 2597, 2396, 3382, 1790, 2773, + 2705, 2706, 1342, 982, 893, 1350, 3017, 539, -527, 2010, + 3419, -1153, -531, 3040, 1815, 2623, 3019, 2239, 859, 3580, + 2543, 912, 2144, 2425, 3609, 913, 3613, 1368, 1369, -1949, + 1580, 2618, 2612, 2725, -1373, 2431, 2189, 2730, 1594, -1949, + -454, -454, 2074, 2075, 2818, 2402, 2719, -527, 1594, -527, + 3339, -531, -1314, -531, -1940, 3340, 1314, 1102, 1103, -371, + 1937, 1938, 1818, 1586, 2684, 2459, 1958, 912, -1957, -1295, + -1315, 913, 2464, 1602, -1314, 2709, 1353, 3359, 3191, 2162, + -875, -870, 1602, 3310, 1895, 1635, -1940, -1957, 1368, 1369, + 1904, -1315, 1587, 1592, 872, 1603, 1263, 2115, 1263, 976, + 2060, 1616, -865, 1897, 1603, 1685, 1002, 981, 2191, 1604, + 1616, 1956, 1673, 2496, 1724, 878, 3463, 2496, 1606, 1809, + 2659, 3250, 2518, 3439, 2095, 3464, 1953, 1954, 1955, 1956, + 77, 942, 3342, 1977, 978, 784, 3224, 3225, 2787, 2788, + 2789, 2790, 3456, 1810, 882, 872, 2517, 525, -229, -229, + 2966, 3352, 3217, 2891, 3182, 2116, 3505, 2330, 525, 1020, + 3222, 1163, 931, 541, 932, 525, 1670, 1671, 1672, 1673, + 943, 2927, 968, 2797, 2933, 1192, -2102, -2102, -2102, 523, + 1951, 1952, 1953, 1954, 1955, 1956, 3440, 1208, -1359, 3242, + 523, 3085, 888, 2465, 525, 525, 3452, 523, 3383, 889, + 2934, 3384, 817, 1895, 1791, 2721, 1906, 1158, 2892, 108, + 1589, 1060, 1602, 817, 71, 1301, 3046, 2273, 525, 2303, + 817, 3327, 1725, 3329, 3184, 1158, 542, 875, 2387, 2306, + 1599, 2677, 2309, 1004, 1603, 2465, 821, 57, 65, 82, + 103, 1476, 53, 1164, 2678, 68, 69, 1483, 3528, 1908, + 2419, 1194, 77, 890, 1060, 2420, 945, 99, 94, 2928, + 2804, 2302, 70, 3251, 2051, 525, 719, 3017, 1790, 1307, + 525, 1788, 1790, 3261, 1809, 3147, 1790, 3019, 2274, 2586, + 2359, 891, 1804, 1005, 3033, 2137, 3034, 1173, 3124, 908, + 869, 3126, 3506, 3128, 851, 851, 1721, 851, 1810, 851, + 1195, 1668, 1669, 1670, 1671, 1672, 1673, 1951, 1952, 1953, + 1954, 1955, 1956, 2472, 2421, 2326, 2327, 2328, 821, 50, + 51, 2265, 1307, 52, 55, 2929, 2360, 2930, 56, 2407, + 3425, 2395, 3426, 981, 910, 2397, 3372, 59, 2399, 60, + 525, 525, 61, 3403, 541, 2092, 525, 63, 2301, 525, + 525, 66, 525, 525, 525, 525, 3345, 67, 872, 3603, + 77, 80, 2853, 2145, 819, 784, 1360, 2412, 2312, 525, + 1317, 525, 81, 2319, 83, 819, 84, 90, 3507, 109, + 525, 91, 819, 93, 98, 102, -1949, 104, 2693, 1217, + 110, 2146, 1987, 3332, 2694, 1218, 2682, 525, 1307, 1572, + 2686, 523, 1962, 523, 2690, 541, 3477, 542, 546, 23, + 972, 2598, 523, 2599, 928, 1393, 1394, 1401, 1402, 525, + 2273, 2061, 1230, 1781, 817, 111, 817, 1805, 71, 871, + 2067, 916, 823, 549, 1782, 817, 550, 1806, 525, 2566, + 2304, 872, 1231, 2053, 810, 2307, 1004, 1815, 1781, 525, + 525, 525, 2621, 525, 525, 810, 719, 1060, 1631, 1784, + 912, 2698, -1295, 2629, 913, 3157, 2277, 2567, 542, 991, + 1192, 1621, 935, 1602, 1791, 1193, 112, -209, 1791, 1602, + 1003, 2645, 1791, 3491, 3492, 1401, 1402, 1019, 1232, 525, + 2618, 2145, 939, 3321, 1465, 1603, 1005, 2463, 3282, 3322, + 1219, 1603, 3435, 1595, 1596, 1480, 2147, 525, 525, 1604, + 2377, 2336, 2378, 2685, 1217, 1606, 2149, 912, 947, 2146, + 1218, 913, 909, 1715, 1716, 933, 1722, 934, 1158, 1473, + 889, 889, 887, 889, 912, 3532, 1407, 1408, 1627, 1316, + 2177, 1788, 952, 525, 2178, 1788, 1194, 525, 525, 1788, + 71, 982, 26, 27, 28, 953, -608, 525, 525, 525, + 957, -608, 525, 1620, 956, 2432, 2433, 2434, 2435, 2436, + 2437, 958, 2804, 2441, 2442, 2443, 2444, 2445, 2446, 2447, + 2448, 2449, 2450, 1572, 1233, 2521, 819, 2568, 819, 546, + 2735, 972, 2569, 1816, 1727, 1195, 2743, 819, 869, 2670, + 1639, 2672, 2813, 1640, 1407, 1408, 1362, 1641, 1642, 1363, + 959, -2102, -2102, -2102, 2240, 2241, 1727, 550, 1307, 33, + 2473, 969, 2474, 1639, 940, 1219, 1640, 1307, -660, -660, + 1641, 1642, -608, 1234, 2147, -664, -664, 3132, 1650, 2148, + 1728, -2071, -2071, 1235, 2149, 1651, 2475, 987, 2476, 1849, + 546, 1307, 972, -2072, -2072, 1236, 38, 1220, 71, 998, + 912, 1650, 1728, 2564, 1627, 1025, 2418, 1628, -2102, 2150, + 2422, 988, 1652, 2424, 1572, 2594, 1700, 989, 550, 1701, + 2151, -608, 1856, 1857, 1859, 1860, 990, 1237, 1850, 40, + 719, 809, 3086, 1003, 1481, 1652, 941, 993, 1486, 719, + 43, 1026, 809, 2798, 996, 1889, 1462, 2805, 1217, -2073, + -2073, 1469, 1470, 1471, 1218, 1009, 981, 1474, 2092, 2667, + 1222, 2669, 997, 3255, 1048, 1049, 1050, 1028, 1492, 1053, + 1729, 1901, 1496, 719, 1902, 999, 3599, 1579, 525, 77, + 2920, 1239, 2922, 978, 784, 2570, 1007, 2024, 1911, 1591, + 2025, 1970, 1223, 1972, 1973, 46, 2571, 1000, 917, 1730, + 2561, 2562, 1189, 3586, 1191, 3587, 1240, 2049, 2344, 1653, + 2050, 2345, 3562, 3015, 1852, 1001, 1618, 1898, 2632, 1899, + 2413, 1730, 1220, 2414, 918, 1242, 1654, 3574, 525, 525, + 2451, 1655, -2102, 2452, 525, 942, 525, 2150, 1002, 2716, + 1041, 525, 525, 525, 525, 2964, 3612, 1046, 2151, -2102, + 1147, 1148, 2957, 1150, -2102, 1152, 525, 525, 1052, 1219, + 1051, 1731, 1054, 1224, 1055, 525, 3032, 525, 523, 1658, + 525, 1151, 2921, 879, 943, 525, 2497, 525, 525, 2498, + 525, 1221, 3610, 1731, 525, 1222, 2500, 3611, -609, 2498, + 919, 817, -2102, -609, 2835, 2836, 1032, 523, 1167, 523, + 1174, 3042, 523, 887, 887, 2673, 887, 523, 2674, 944, + 523, 2956, 523, 2965, 1175, 1475, 523, 1223, 1181, 920, + 817, 1177, 817, 2679, 1661, 817, 2680, 1178, 2746, 2810, + 817, 2025, 2498, 817, 2811, 817, 1179, 2050, 1572, 817, + 810, 3549, 810, 2814, 880, 810, 2815, 1661, -2076, -2076, + 810, 1182, 3421, 810, 3422, 810, -2077, -2077, 2816, 810, + 945, 2815, 921, 1620, -609, -2078, -2078, 1190, 1616, 2898, + 525, 525, 2899, 2824, 2826, 2827, -2079, -2079, 2822, 525, + 525, 2052, 2823, 2825, 2054, 2055, 2821, 525, 1224, 1209, + 2001, 77, 2002, 1212, 525, 2004, 2059, 2058, 1214, 3055, + 2008, 2056, 2414, 2011, 3056, 2012, 1215, 2345, 1216, 2016, + 1228, 821, 3079, -609, 3087, 3080, 1220, 3088, -2081, -2081, + 719, 525, 881, 1229, 1301, 525, 1663, 3148, 525, 3283, + 2050, 1246, 2050, 1572, 525, 525, 525, 525, 525, 525, + 525, 525, 719, 1250, 1217, 1254, 525, 525, 525, -2102, + 1218, 525, 1255, 819, 1310, 525, 1313, 2131, 525, 525, + 525, 525, 525, 525, 525, 525, 525, 3284, 1321, 525, + 2498, 2756, -2082, -2082, 1314, 1247, 525, 71, 1307, 1222, + 523, 1319, 819, 1325, 819, 1335, 982, 819, 2186, 922, + 2618, 3316, 819, 1337, 2050, 819, 525, 819, 2221, 3323, + 923, 819, 2025, 1473, 3229, 889, -2083, -2083, 1338, 1217, + 116, 1248, 1345, 3333, 536, 1218, 3334, 2115, 1346, 525, + 3366, 1164, 749, 2414, 3367, 3400, 3461, 2345, 2050, 2414, + 525, 525, 14, 15, 1664, 924, 838, -2102, -2102, -2102, + 852, 1668, 1669, 1670, 1671, 1672, 1673, 3192, 1356, 3473, + 3499, 2964, 3474, 3500, 1352, 1219, 1355, -2102, 925, 541, + 3543, -663, -663, 3474, 1668, 1669, 1670, 1671, 1672, 1673, + 1572, 1361, 3584, 882, 1217, 3474, -2084, -2084, 23, 719, + 1218, 719, 1224, 1379, -1359, 1380, 926, 809, 1385, 809, + -2085, -2085, 809, 1443, 2289, 1456, 2293, 809, 2914, 1217, + 809, 2076, 809, -2086, -2086, 1218, 809, 1458, 2077, 2078, + 1459, 2028, 2079, 2080, 2081, -2087, -2087, 3246, -2088, -2088, + 1219, 525, 542, -540, 3038, 3067, 1307, -2090, -2090, 525, + 525, 3049, -2091, -2091, 3078, 985, 2269, 1466, -540, 1025, + 1477, 2866, 2867, -540, -2092, -2092, 2278, 1022, 2281, 1478, + 3561, 2292, 1023, 1484, 3563, -2093, -2093, 2296, 1485, 2298, + -2094, -2094, 1491, 3309, 1497, 3159, 1495, 1043, 1574, 3399, + 1307, 1575, 2305, -2095, -2095, 1026, 971, 2308, -2097, -2097, + 1577, 2313, 2314, 2315, 2316, 1219, 2320, 2321, 719, 71, + -841, 1482, 1149, -848, -540, 1307, 525, -2099, -2099, 1586, + 2381, 1028, -2101, -2101, 981, 1836, 1837, 1403, 1404, 3604, + 1219, 1024, 1220, 1590, -540, 1407, 1408, 3188, 3189, 46, + 1572, 26, 27, 28, 525, 525, -685, 525, 940, 2748, + 2750, -686, 1572, 525, 525, 525, 525, 525, 525, -838, + 823, 525, 525, 525, 525, 525, 525, 525, 525, 525, + 525, 2618, 3570, 3571, 545, -839, 525, 525, 3596, 3597, + 525, 1600, 1572, -540, 1696, 1697, -842, 525, 1601, 1572, + 2141, 1251, -540, 3015, -840, 1222, 1622, 1220, 2637, 2638, + 1632, 1634, 1679, 1025, 1681, 1695, 1683, 1703, 33, 1704, + 1712, 525, 1708, 1193, 1195, 1751, 525, 1714, 525, 35, + 941, 1749, 525, 1753, 546, 1768, 972, 1252, 1786, 1787, + 1572, 1793, 1788, 1795, 1572, 3220, 525, 1794, 1307, 1026, + 1572, 37, 3399, 548, 1800, 38, 1808, 1370, 523, 549, + 1032, 1807, 550, 1812, 523, 1027, 2264, 1413, 887, 3082, + 1222, 3364, 1220, 1572, 1987, 1028, 113, 3230, 3231, 1475, + 1822, 817, 1828, 1832, 1839, 525, 525, 817, 40, 1845, + 1840, 1841, 1854, 1855, 3399, 1848, 1863, 1220, 1864, 43, + 1867, 810, 1223, 1870, 1871, 1873, 1874, 810, 1224, 1029, + 3123, 1876, 1877, 1890, 1891, 2617, 44, 1903, 1895, 1928, + 1930, 1931, 1933, 525, 1936, 1959, 1967, 525, 1978, 1849, + 2005, 2310, 525, 525, 1968, 1222, 1975, 2003, 1998, 2000, + 45, 2009, 2013, 3399, 2023, 2014, 2015, 2020, 1620, 1580, + 872, 2486, 2063, -540, 46, 1030, 2317, 2489, 525, 525, + 1222, 2026, 1031, 525, 1587, 2032, 1060, 2311, 1850, 3454, + 1022, 1592, 2027, 1224, 2029, 1023, 2096, 2031, 2097, 525, + 2030, 1640, 525, 525, 525, 541, 2062, 1633, 3415, 2100, + 2107, 2109, 2318, 2104, 2112, 2110, 23, 1636, 2133, 2111, + 525, 719, 2154, 1851, 1032, 2153, 2362, 525, 2156, 2180, + 525, 2181, 2187, 2199, 2200, 523, 2204, 2220, 71, 1686, + 2217, 880, 912, 1033, 1230, 1177, 913, 525, 1691, 2229, + 2231, 2230, 2234, 2232, 1024, 3208, 2233, 2255, 1224, 1569, + 525, 3206, 523, 819, 1231, 2256, 2251, 2259, 542, 819, + 2380, 2266, 2271, 2270, 1852, 881, 2272, 525, 525, 523, + -540, 2342, 2352, 1224, 3015, 817, 2346, 2363, 2361, 2364, + 2365, 23, 2366, 2367, 525, -540, 525, 2368, 2383, 2382, + -540, 2385, 817, 2388, 2389, 810, 2390, 2391, 1059, 525, + 1232, 1939, 1034, 1898, 2394, 1940, 1941, 2006, 2392, 1942, + 1943, 1944, 810, 2398, 2415, 1939, 1025, 719, 719, 719, + 2423, 1964, 2453, 1963, 2460, 2461, 1815, 2482, 2490, 2502, + 2462, 544, 2289, 2289, 2289, 2466, 2470, 3353, 2082, 2083, + 2084, -540, 2085, 2086, 2087, 2088, 2089, 2090, 1561, 26, + 27, 28, 1026, 2504, 1693, 2471, 525, 2488, 809, 2509, + 2510, -540, 1307, 2532, 809, 2511, 2535, 2513, 1027, 2514, + 2960, 2515, 2516, 2520, 2519, 2530, 2527, 2528, 1028, 1373, + 2531, 872, 2533, 2534, 2536, 2547, 2537, 1612, 3281, 2543, + 1316, 2560, 1856, 1857, 1859, 1860, 1233, -208, 719, 2538, + 982, 2565, 2572, 1572, 2557, 2558, 2581, 2582, 2589, 2587, + -540, 2588, 1029, 1911, 2600, 2601, 33, 2605, 2606, -540, + 2603, 2611, 2613, 525, 26, 27, 28, 2625, 2627, -666, + 2614, 2624, 1631, 1569, 2628, 2631, 2636, 819, 525, 981, + 546, 2635, 547, 2641, 2644, 1234, 1766, 719, 2647, 2643, + 2639, 2666, 2668, 38, 819, 1235, 2681, 2687, 1030, 2688, + 2689, 2699, 1911, 2700, 2701, 1031, 1910, 1236, 550, 2702, + 2715, 2714, 2720, 2732, 2736, 2737, 2740, 2733, 2744, 2115, + 2753, 2763, 2771, 1594, 2739, 525, 40, 2774, 2777, 1945, + 2780, 33, 3404, 2794, 3406, 1618, 2795, 43, 2781, 1237, + 2782, 2783, 2806, 2807, 2820, 2812, 3414, 1032, 2831, 2860, + 2828, 2849, 1946, 2861, 44, 2141, 2838, 523, 2839, 1637, + 2850, 2858, 1059, 525, 1569, 1939, 1033, 2864, 38, 1940, + 1941, 2583, 1561, 1942, 1943, 1944, 2879, 2881, 45, 1572, + 817, 2907, 809, 2873, 3416, 1158, 3418, 2911, 3536, 2874, + 1373, 2905, 46, 1239, 2888, 2919, 525, 3497, 2932, 809, + 2885, 40, 525, 525, 872, 2909, 2876, 2925, 2926, 2952, + -540, 2968, 43, 3035, 3036, 3037, 3052, 525, 1240, 3041, + 3044, 1022, 1947, 3045, 3063, 3053, 1023, 3058, 3501, 44, + 3490, 3059, 3071, 525, 3072, 1034, 525, 1242, 525, 3076, + 2345, 3083, 872, 3084, 3115, 1572, 525, 3089, 3111, 525, + 525, 3262, 3109, 45, 525, 525, 3119, 3129, 3130, 3179, + 3133, 525, 3485, 1561, 3134, 3160, 3167, 46, 3172, 3170, + 1373, 3181, 23, 1373, 1373, 3185, 525, 3186, 3187, 912, + 3193, 3194, 3195, 913, 3199, 1024, 525, 3203, 2052, 3204, + 3205, 2054, 2055, 2913, 3213, 521, 532, 3216, 77, 3218, + 3219, 557, 3237, 2059, 2058, 3223, 525, 557, 2056, 3238, + -2070, 807, -2071, 822, 2897, 2937, 3240, 825, 557, 834, + -2072, 2938, 834, -2073, 3254, 854, 854, 3256, 3239, 854, + 3241, -2074, 557, 557, 2939, -2075, -2076, -2077, -2078, 3271, + 3273, 3243, 819, -2079, -2081, 3275, 3244, 719, -2082, -2083, + 3018, 719, -2084, 719, 3257, -2085, 871, 1025, 2940, -2086, + 2941, 3252, 2289, 807, 807, 525, 3020, 525, 2293, -2087, + -2088, -2090, -2091, -2092, -2093, -2094, 1946, -2095, -2096, -2097, + 2916, -2098, -2099, 2917, -2100, -2101, -1312, 3276, 1569, 854, + 3259, 3279, 3285, 1026, 3286, 3289, 854, 557, 854, 854, + 854, 1856, 1857, 1859, 1860, 3291, 3293, 1907, 1909, 1027, + 2969, 3074, 3297, 3299, 3300, 26, 27, 28, 3303, 1028, + 2192, 3304, 3047, 3305, 3525, 3022, 3023, 3024, 3025, 3026, + 3027, 3028, 3029, 3030, 3031, 1948, 1949, 1950, 3308, 1951, + 1952, 1953, 1954, 1955, 1956, 3311, 1947, 525, 2942, 3315, + 1572, 3068, 3312, 1029, 3331, 3335, 3330, 1217, 3341, 872, + 3355, 3338, 3356, 1218, 3343, -1311, 3363, 525, 525, 3365, + 3371, 1230, 525, 3373, 1206, 525, 3374, 3387, 3388, 3389, + 3401, 3402, 33, 1569, 3408, 3405, 3409, 1561, 3411, 3417, + 3423, 1231, 2261, 2263, 3443, 3212, 3447, 3449, 3450, 1030, + 3453, 3459, 525, 3466, 3467, 23, 1031, 3471, 3468, 3478, + 3476, 3483, 3480, 3163, 3487, 3489, 2943, 3484, 3488, 38, + 3496, 2944, 525, 3494, 3503, 3498, 3508, 3514, 525, 525, + 3515, 3516, 3521, 525, 1572, 3522, 3551, 1232, 525, 1618, + 1230, 525, 525, 3531, 3523, 3541, 525, 1307, 1032, 3533, + 525, 2322, 40, 3535, 525, 872, 914, 3554, 3556, 3552, + 1231, 525, 3575, 43, 3553, 2337, 2337, 1033, 1219, 3572, + 2945, 3589, 3594, 3600, 3605, 3614, 3615, 1618, 2297, 1180, + 44, 2664, 1561, 2971, 2967, 3430, 523, 2900, 2946, 3529, + 3493, 3598, 3226, 2400, 2755, 1156, 71, 3512, 3582, 3351, + 3550, 3557, 71, 3576, 45, 525, 1232, 3386, 1778, 817, + 2671, 2646, 3062, 525, 3548, 2936, 3555, 2642, 46, 3021, + 1569, 3546, 1893, 2747, 2710, 2749, 2760, 3280, 2912, 810, + 2630, 2068, 525, 1233, 3043, 1705, 1034, 3428, 1370, 2258, + 2785, 1572, 2616, 2098, 2417, 2099, 1853, 3534, 26, 27, + 28, 1745, 1463, 1746, 2626, 1464, 2226, 3479, 3407, 1948, + 1949, 1950, 2257, 1951, 1952, 1953, 1954, 1955, 1956, 1750, + 811, 2602, 2494, 2117, 2893, 3018, 3307, 2779, 2778, 1465, + 3118, 2809, 1234, 3207, 1430, 3357, 2508, 3228, 3482, 2947, + 1414, 1416, 1235, 2409, 2410, 3481, 2411, 1420, 2948, 2555, + 1421, 1422, 1233, 1423, 1236, 2833, 1424, 1425, 2524, 1426, + 71, 2619, 2579, 3142, 2556, 33, 1989, 719, 2577, 1561, + 2852, 3143, 3171, 2886, 3469, 1220, 986, 2340, 2501, 23, + 1905, 1211, 1911, 2901, 2195, 2691, 1237, 2197, 0, 71, + 0, 0, 0, 0, 0, 525, 3073, 0, 0, 0, + 0, 1234, 38, 981, 1824, 0, 525, 1572, 0, 872, + 0, 1235, 0, 0, 0, 0, 3263, 0, 0, 0, + 1569, 819, 525, 1236, 0, 0, 2238, 2238, 541, 0, + 0, 0, 1569, 0, 1238, 40, 0, 0, 1222, 0, + 1239, 0, 0, 0, 1618, 0, 43, 0, 0, 0, + 1572, 0, 0, -1359, 0, 1237, 525, 0, 0, 0, + 0, 0, 1569, 44, 0, 1240, 0, 0, 0, 1569, + 1241, 0, 0, 525, 525, 0, 0, 525, 854, 525, + 0, 0, 0, 854, 1242, 1059, 854, 45, 1939, 0, + 1373, 542, 1940, 1941, 557, 0, 1942, 1943, 1944, 0, + 1373, 46, 0, 1373, 525, 1059, 0, 0, 1939, 1239, + 1569, 2894, 1940, 1941, 1569, 0, 1942, 1943, 1944, 1561, + 1569, 0, 26, 27, 28, 0, 809, 0, 525, 0, + 0, 1561, 0, 2855, 1240, 0, 0, 0, 0, 0, + 871, 1224, 0, 1569, 0, 543, 0, 0, 0, 0, + 0, 0, 0, 1242, 0, 0, 0, 0, 0, 0, + 3018, 1561, 0, 0, 544, 0, 0, 0, 1561, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 809, 0, 809, -1832, 1922, 809, 0, 1840, - 0, 854, 809, 0, 0, 809, 0, 809, 0, 0, - 854, 809, 0, 0, 0, 1059, -2101, 0, 1937, 0, - 1945, 1884, 1938, 1939, 0, 1923, 1940, 1941, 1942, 0, - 961, 0, 0, 0, 3123, 961, 0, 557, 557, 0, - 557, 961, 1945, 3148, 0, 0, 0, 0, 0, 1563, - 0, 0, 0, 859, 0, 1562, 0, 0, 0, 0, + 1059, 0, 719, 1939, 0, 0, 0, 1940, 1941, 33, + 0, 1942, 1943, 1944, 0, 0, 0, 1911, 0, 0, + 1373, 0, 525, 0, 0, 0, 0, 0, 2856, 1561, + 3354, 3369, 525, 1561, 525, 0, 525, 0, 0, 1561, + 525, 0, 525, 545, 525, 0, 38, 0, 0, 0, + -208, 0, 3361, 3362, 523, 0, 0, 0, 525, 0, + 0, 0, 1561, 525, 0, 525, 0, 0, 0, 0, + 0, 0, 0, 525, 0, 0, 3375, 817, 0, 40, + 0, 0, 0, 0, 0, 0, 719, 0, 2675, 0, + 43, 525, 0, 546, 0, 547, 2254, 0, 0, 0, + 0, 3436, 0, 0, 961, 557, 557, 44, 3427, 0, + 3429, 0, 548, 0, 0, 0, 0, 0, 549, 1946, + 0, 550, 0, 0, 71, 0, 0, 0, 0, 0, + 0, 45, 0, 0, 0, 0, 0, 0, 525, 1946, + 2707, 0, 0, 2512, 0, 2895, 984, 532, 525, 0, + 3462, 0, 521, 0, 854, 0, 0, 0, 2722, 0, + 525, 0, 0, 807, 1618, 0, 3465, 1011, 1011, 0, + 807, 0, 0, 1011, 1038, 525, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 834, 834, 834, 1947, + 0, 834, 0, 525, 0, 0, 0, 0, 0, 1106, + 1106, 834, 834, 1370, 834, 0, 834, 523, 0, 1947, + 0, 0, 0, 2761, 1946, 2762, 0, 525, 854, 2767, + 0, 2770, 0, 0, 557, 0, 0, 0, 0, 0, + 817, 0, 525, 0, 0, 0, 854, 0, 0, 819, + 11, 3018, 0, 719, 0, 0, 0, 0, 0, 523, + 854, 822, 0, 0, 0, 0, 0, 0, 3436, 0, + 0, 0, 0, 0, 0, 0, 525, 0, 14, 15, + 0, 0, 817, 0, 0, 0, 0, 0, 0, 1439, + 525, 525, 525, 1569, 1947, 854, 1312, 0, 0, 0, + 0, 0, 3558, 0, 0, 0, 0, 1323, 523, 0, + 2596, 854, 854, 854, 854, 0, 0, 525, 3542, 0, + 0, 0, 0, 0, 23, 0, 0, 1344, 3573, 71, + 0, 817, 0, 0, 1022, 0, 0, 0, 0, 1023, + 0, 0, 0, 2622, 2622, 0, 0, 0, 0, 0, + 3393, 0, 0, 0, 0, 0, 0, 0, 525, 1011, + 1038, 0, 854, 0, 0, 1437, 0, 0, 0, 0, + 0, 1011, 1011, 0, 0, 0, 0, 0, 557, 0, + 0, 0, 0, 0, 807, 0, 807, 0, 0, -1831, + 0, 0, 1561, 0, 0, 807, 0, 0, 1024, 0, + 0, 0, 819, 0, 0, 557, 71, 0, 71, 0, + 0, 0, 1948, 1949, 1950, 0, 1951, 1952, 1953, 1954, + 1955, 1956, 1576, 0, 0, 0, 0, 0, 0, 1569, + 0, 0, 1948, 1949, 1950, 0, 1951, 1952, 1953, 1954, + 1955, 1956, 0, 0, 819, 0, 0, 0, 71, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 1660, 0, 0, 0, -2101, 0, 0, 0, 0, - 0, -1832, 1667, 1668, 1669, 1670, 1671, 1672, 0, 0, - 0, -1832, 0, 0, 71, 3540, 0, 0, 1560, 0, - 0, 0, 0, 0, 0, 0, 1566, 0, 0, 0, - 1560, -1832, 0, -1832, -1832, 0, 0, 1567, 0, 0, - 1436, 1436, 0, 0, 0, 0, 1436, 0, 521, 0, + 0, 1563, 0, 0, 71, 0, 1564, 26, 27, 28, + 1025, 0, 0, 557, 0, 0, 0, 0, 1203, 0, + 0, 0, 0, 0, 3011, 0, 0, 1742, 0, -1831, + 0, 0, 0, 819, 0, 1569, 1439, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 1026, 1948, 1949, 1950, + 0, 1951, 1952, 1953, 1954, 1955, 1956, 2707, 0, 0, + 0, 0, 1027, 0, 0, 0, 1699, 0, 1561, 0, + 0, 1914, 1028, 0, 33, 0, -1831, 0, 1566, 0, + 0, 0, 557, 557, 0, 35, 0, 0, 0, 854, + 0, -1831, 0, 0, 0, 0, -1831, 0, 0, 0, + 0, -1831, 0, 0, 0, 0, 1029, 37, 0, 0, + -1831, 38, 1437, 1106, 1106, -1831, 0, 0, 1915, 0, + 0, 0, 0, 0, 854, 1777, 0, 1204, 0, 0, + 71, 39, 0, 0, 1561, 0, 0, 854, 1059, 1916, + 1569, 1939, 0, 0, 40, 1940, 1941, -1831, 0, 1942, + 1943, 1944, 1030, 0, 854, 43, 71, 1917, 854, 1031, + 0, 1918, 0, 1825, 0, 0, 3150, -1831, 0, 2817, + 2819, 0, 44, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 1919, 1563, 0, 1920, 0, 0, + 1564, 0, 0, 0, 0, 0, 45, 0, -1833, 1567, + 0, 1032, 0, 1921, 0, 0, 0, 0, 0, 0, + 46, 0, 1568, 0, 0, 0, -1831, 0, 0, -1831, + 1033, 0, 1842, 0, 854, -1831, 0, 0, 0, 0, + 0, 0, 3169, 854, 0, 0, 0, 0, 0, 1561, + 1569, 853, 0, 0, 1886, 861, 0, 0, 0, 0, + 0, 0, 0, 961, 0, 0, 0, 0, 961, 0, + 557, 557, 1566, 557, 961, -1831, 0, 1439, 1439, 0, + 0, 0, 0, 1439, 0, 0, 1563, 0, 0, 0, + 0, 1564, 0, 0, 0, 0, 0, 0, 0, 1034, + -1831, 0, 0, 0, 1205, 0, 1922, 0, -1833, 0, + 0, 0, 0, 0, 1923, 897, 0, 0, 0, 0, + 0, 0, 900, 0, 903, 0, 907, 0, 0, 0, + 0, 0, 0, 0, 1569, 0, 1924, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 1373, 0, 0, 1561, + 0, 0, 0, 1437, 1437, -1833, 0, 0, 859, 1437, + 0, 521, 1946, 1566, 0, 1925, 0, 0, 0, 0, + -1833, 0, 0, 0, 1011, -1833, 557, 1982, 0, 0, + -1833, 1106, 1106, 0, 854, 0, -1831, 0, 0, -1833, + 807, 0, 807, 1567, -1833, 807, -1831, 0, 0, 0, + 807, 0, 1106, 807, 0, 807, 1568, 0, 0, 807, + 3258, 557, 0, 557, 0, 0, -1831, 0, -1831, -1831, + 0, 0, 0, 0, 0, 0, -1833, 0, 0, 0, + 558, 0, 1947, 1561, 0, 0, 558, 1370, 0, 0, + 808, 1569, 0, 0, 0, 0, -1833, 558, 0, 0, + 0, 0, 0, 0, 0, -1831, 0, 0, -1831, -1831, + -1831, 558, 558, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 1569, 0, 0, 0, 0, + 0, 3125, 0, 0, 1567, 0, 0, 0, 0, 0, + 0, 0, 808, 808, 0, -1833, 0, 1568, -1833, 0, + 0, 0, 0, 0, -1833, 0, 0, 0, 0, 0, + 1563, 0, 0, 0, 0, 1564, 0, 0, 2091, 0, + 0, 0, 0, 0, 3328, 0, 558, 0, 0, 0, + 557, 0, 0, 0, 1059, 0, 0, 1939, 0, 0, + 1561, 1940, 1941, 0, -1833, 1942, 1943, 1944, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 1569, 0, 0, + 0, 0, 3151, 0, 0, 0, 0, 0, 2228, -1833, + 961, 0, 0, 1437, 1561, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 1566, 0, 0, + 0, 0, 0, 0, 3011, 0, 0, 0, 0, 0, + 1569, 1106, 0, 0, 0, 1563, 0, 0, 0, 0, + 1564, 0, 0, 0, 0, 0, 2193, 0, 854, 0, + 854, 0, 0, 0, 0, 0, 1373, 859, 0, 0, + 854, 1373, 2209, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 1437, 1948, 1949, 1950, 0, 1951, + 1952, 1953, 1954, 1955, 1956, -1833, 1561, 0, 0, 0, + 0, 0, 0, 0, 0, -1833, 0, -1848, 0, 854, + 0, 557, 0, 0, 0, 0, 0, 0, 1907, 1909, + 0, 0, 1566, 2260, 2262, -1833, 0, -1833, -1833, 1777, + 557, 0, 0, 0, 0, 0, 0, 0, 0, 1561, + 557, 2279, 557, 2283, 0, 557, 0, 0, 1567, 0, + 1569, 557, 0, 557, 0, 0, 0, 0, 0, 0, + 0, 1568, 3455, 0, -1833, 961, 557, -1833, -1833, -1833, + 961, 557, 0, 0, 0, 557, 557, 557, 557, 0, + 557, 557, 1563, 0, 0, 0, 0, 1564, 1946, 0, + 0, 0, 0, 0, 930, 0, 0, 0, 2341, 937, + 0, 0, 938, 0, 0, 0, 1323, -1848, 854, 854, + 854, 854, 854, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 1439, 1439, 1439, 1439, 1439, 1439, 0, 2370, + 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, 1439, + 0, 0, 0, 1567, 0, 0, 0, 0, 2393, 1561, + 0, 0, 0, 0, -1848, 0, 1568, 0, 1947, 1566, + 1059, 0, 0, 1939, 0, 0, 0, 1940, 1941, -1848, + 0, 1942, 1943, 1944, -1848, 0, 0, 0, 0, -1848, + 0, 0, 0, 0, 0, 0, 0, 0, -1848, 0, + 0, 0, 0, -1848, 0, 3011, 0, 0, 1437, 1437, + 1437, 1437, 1437, 1437, 0, 0, 1437, 1437, 1437, 1437, + 1437, 1437, 1437, 1437, 1437, 1437, 0, 0, 0, 0, + 0, 0, 0, 0, 0, -1848, 0, 0, 0, 0, + 0, 0, 1563, 1907, 1909, 0, 557, 1564, 0, 0, + 0, 0, 0, 0, 1563, -1848, 1373, 0, 0, 1564, + 854, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 807, 0, 0, 0, 0, 0, 807, 0, 0, + 0, 0, 0, 557, 1563, 0, 0, 0, 557, 1564, + 1567, 1563, 0, 0, 0, 0, 1564, 2506, 2506, 0, + 0, 0, 0, 1568, -1848, 0, 0, -1848, 0, 0, + 0, 0, 0, -1848, 0, 0, 0, 0, 0, 1566, + 0, 1569, 0, 558, 0, 0, 0, 1439, 1439, 0, + 0, 1566, 1563, 0, 0, 0, 1563, 1564, 0, 0, + 0, 1564, 1563, 0, 0, 0, 0, 1564, 0, 0, + 0, 0, 0, -1848, 0, 1639, 0, 0, 1640, 0, + 995, 1566, 1641, 1642, 0, 1563, 0, 0, 1566, 557, + 1564, 0, 0, 0, 2549, 0, 0, 0, -1848, 557, + 0, 1948, 1949, 1950, -2102, 1951, 1952, 1953, 1954, 1955, + 1956, 0, 0, 1650, 0, 0, 0, 0, 0, 0, + -2102, 0, 0, 1437, 1437, 0, 0, 0, 0, 1566, + 0, 0, 0, 1566, 0, 0, 0, 0, 0, 1566, + 1561, 0, 2091, 0, 0, 0, 0, 1652, 1437, 0, + 0, 0, 0, 0, 0, 0, 859, 0, 14, 15, + 1567, 0, 1566, 1439, 0, 0, 0, 0, 0, 0, + 0, 0, 1567, 1568, 1947, 807, 1210, 0, 0, 0, + 0, 0, 0, 0, -1848, 1568, 0, 557, 0, 0, + 0, 0, 807, 0, -1848, 0, 2209, 0, 0, 0, + 0, 0, 1567, 0, 23, 0, 0, 0, 0, 1567, + 0, 1311, 2563, 0, -1848, 1568, -1848, -1848, 0, 0, + 0, 0, 1568, 0, 0, 0, 0, 1327, 1329, 1332, + 1334, 0, 0, 0, 558, 558, 557, 1373, 0, 1437, + 0, 1106, 557, 0, -2102, 0, 0, 0, 0, 0, + 1567, 0, 0, -1848, 1567, 0, -1848, -1848, -1848, 0, + 1567, -2102, 1842, 1568, 0, 0, -2102, 1568, 0, 0, + 0, 0, 0, 1568, 0, 0, 0, 0, 1432, 0, + 0, 0, 0, 1567, 0, 0, 0, 0, 0, 0, + 0, 0, 808, 0, 0, 0, 1568, 0, 0, 0, + 0, 0, 0, 0, -2102, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 1560, 1011, 0, 557, 1980, 0, 0, 1560, 1106, 1106, - -1832, 854, 0, -1832, -1832, -1832, 0, 807, 0, 807, - 0, 0, 807, 23, 0, 0, 0, 807, 0, 1106, - 807, 0, 807, -2101, 0, 2139, 807, 0, 557, 1372, - 557, 0, 1565, 0, 1372, 0, 1563, 0, 1560, 0, - 3009, 0, 1560, 0, 0, 0, 1566, 0, 1560, 0, - 0, 0, 0, 0, 1562, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 1562, 0, 0, 0, - 0, 1560, 0, 2705, 0, 0, 0, 0, 0, 1944, - 0, 1905, 1907, 1946, 1947, 1948, 0, 1949, 1950, 1951, - 1952, 1953, 1954, 887, 0, 0, 1562, 0, 0, 0, - 0, 0, 0, 1562, 0, 1946, 1947, 1948, 0, 1949, - 1950, 1951, 1952, 1953, 1954, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 1565, 0, 0, - 0, -2101, 0, 0, 0, 2089, 0, 0, 1667, 1668, - 1669, 1670, 1671, 1672, 1562, 3426, 0, 557, 1562, 1945, - 0, 1567, 0, 0, 1562, 0, 26, 27, 28, 0, - 0, 0, 0, 0, 0, 853, 0, 0, 0, 861, - 0, 0, 0, 0, 0, 0, 0, 1562, 0, 0, - 0, 0, 0, 0, 0, 1563, 0, 961, 0, 0, - 1436, 0, 0, 0, 0, 0, 0, 1563, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 1638, 0, - 0, 1639, 0, 0, 0, 1640, 1641, 0, 1106, -2101, - -2101, -2101, 0, 33, 0, 0, 0, 1563, 0, 897, - 2360, 0, 0, 2191, 1563, 854, 900, 854, 903, 0, - 907, 1567, 71, 0, 0, 0, 1649, 854, 3167, 2207, - 0, 0, 0, 1650, 0, 0, 0, 0, 0, 0, - 38, 1436, 0, 0, 1565, 0, 0, 0, 0, 0, - 1566, 0, 0, 0, 0, 1563, 0, 0, 0, 1563, - 1651, 0, 0, 0, 0, 1563, 854, 0, 557, 0, - 0, 0, 0, 40, 0, 0, 1905, 1907, 0, 0, - 2258, 2260, 0, 0, 43, 0, 1776, 557, 1563, 1372, - 0, 0, 0, 0, 0, 0, 0, 557, 2277, 557, - 2281, 44, 557, 0, 0, 0, 0, 0, 557, 0, - 557, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 961, 557, 0, 45, 0, 961, 557, 0, - 0, 0, 557, 557, 557, 557, 0, 557, 557, 46, - 0, 0, 1946, 1947, 1948, 1566, 1949, 1950, 1951, 1952, - 1953, 1954, 809, 0, 2339, 0, 0, 1652, 809, 0, - 0, 0, 1322, 0, 854, 854, 854, 854, 854, 0, - 0, 1560, 0, 0, 1653, 0, 0, 0, 0, 1654, - 0, 0, 0, 0, 0, 2368, 0, 0, 0, 0, - 0, 0, 0, 1565, 0, 0, 3256, 0, 0, 0, - 0, 0, 0, 0, 2391, 1565, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 1657, 0, 0, - 0, 0, 0, 1369, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 1565, 0, 0, 0, 0, - 0, 0, 1565, 0, 0, 1567, 0, 0, 0, 0, - 0, 0, 0, 0, 1436, 1436, 1436, 1436, 1436, 1436, - 0, 0, 1436, 1436, 1436, 1436, 1436, 1436, 1436, 1436, - 1436, 1436, 1660, 0, 0, 0, 0, 1562, 0, 0, - 0, 0, 1566, 1565, 0, 0, 0, 1565, 0, 1617, - 0, 0, 557, 1565, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 854, 1560, 0, 2139, - 3326, 0, 0, 0, 0, 0, 1565, 807, 0, 1059, - 0, 0, 1937, 807, 0, 2581, 1938, 1939, 1022, 557, - 1940, 1941, 1942, 1023, 557, 0, 809, 0, 0, 0, - 1567, 0, 0, 2504, 2504, 0, 0, 3149, 0, 0, - 1372, 0, 1438, 809, 0, 0, 0, 0, 0, 0, - 0, 0, -1847, 0, 0, 558, 0, 0, 0, 0, - 0, 558, 0, 1560, 1662, 808, 0, 0, 0, 0, - 3009, 0, 558, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 1024, 0, 0, 0, 558, 558, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 1563, 0, - 0, 0, 0, 1562, 0, 557, 0, 0, 0, 0, - 2547, 0, 0, 0, 0, 557, 0, 808, 808, 0, - 0, 1566, 0, 1059, 0, 0, 1937, 0, 0, 0, - 1938, 1939, 0, 1566, 1940, 1941, 1942, 0, 930, 1436, - 1436, 0, 0, 937, 0, 0, 938, 0, 0, 0, - 0, 558, -1847, 0, 1025, 0, 0, 0, 2089, 0, - 0, 0, 0, 1566, 1436, 0, 0, 1567, 1560, 1562, - 1566, 0, 1663, 0, 0, -2101, -2101, -2101, 0, 1667, - 1668, 1669, 1670, 1671, 1672, 0, 0, 0, 0, 0, - 1026, 807, 0, 0, 0, 0, 0, 0, 3453, -1847, - 871, 0, 0, 557, 0, 0, 1027, 0, 807, 0, - 0, 1566, 2207, 0, -1847, 1566, 1028, 0, 0, -1847, - 0, 1566, 0, 1944, -1847, 0, 0, 0, 0, 0, - 0, 0, 0, -1847, 1563, 0, 0, 0, -1847, 0, - 1741, 0, 0, 0, 1566, 0, 0, 0, 0, 1438, - 1029, 0, 557, 0, 0, 1436, 0, 1106, 557, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 1560, 0, - -1847, 1206, 0, 0, 1562, 0, 0, 0, 1840, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - -1847, 0, 0, 1945, 0, 0, 1030, 0, 0, 0, - 1563, 0, 0, 1031, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 1567, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 1565, 0, 1567, 0, - 0, 3009, 0, 0, 0, 0, 0, -2101, 0, -1847, - 0, 0, -1847, 0, 0, 1032, 0, 0, -1847, 1840, - 0, 0, 1560, 0, 0, 0, 854, 0, 1567, 0, - 0, 0, 0, 0, 1033, 1567, 0, 1322, 0, 0, - 1840, 854, 854, 854, 1562, 0, 0, 0, 0, 0, - 0, 0, 0, 1617, 557, 0, 854, 0, -1847, 854, - 0, 0, 0, 0, 995, 0, 854, 0, 0, 0, - 0, 0, 961, 0, 0, 1563, 1567, 1945, 0, 0, - 1567, 0, 0, -1847, 0, 0, 1567, 0, 0, 0, - 0, 1617, 0, 0, 1840, 1840, 0, 1840, 0, 0, - 0, 0, 0, 1034, 0, 0, 0, 0, 0, 1567, - 71, 0, 0, 0, 0, 0, 71, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 521, 0, 1562, 1560, - 0, 0, 1565, 0, 0, 0, 0, 0, 0, 0, - 0, 859, 2910, 0, 2782, 0, 0, 0, 0, 1438, - 1438, 0, 854, 854, 854, 1438, 0, 0, 0, 0, - 1210, 0, 557, 1560, 1436, 0, 557, 0, 0, -1847, - 0, 0, 557, 0, 0, 1563, 1946, 1947, 1948, -1847, - 1949, 1950, 1951, 1952, 1953, 1954, 0, 0, 0, 0, - 0, 0, 854, 0, 0, 1310, 0, 0, 1565, -1847, - 0, -1847, -1847, 0, 0, 0, 2089, 0, 0, 0, - 0, 1326, 1328, 1331, 1333, 0, 0, 557, 0, 0, - 0, 557, 0, 0, 71, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 1566, 1562, 0, 0, -1847, 0, - 0, -1847, -1847, -1847, 0, 1560, 0, 0, 0, 0, - 1436, 1436, 0, 71, 0, 0, 0, 0, 0, 1563, - 3071, 0, 1431, 0, 0, 0, 0, 0, 558, 1562, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 2888, - 0, 0, 0, 0, 0, 2207, 0, 0, 1560, 0, - 1946, 1947, 1948, 0, 1949, 1950, 1951, 1952, 1953, 1954, - 0, 854, 0, 1565, 0, 557, 0, 1106, 1617, 557, - 557, 0, 0, 557, 0, 0, 0, 1840, 1776, 1840, - 0, 1884, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 1842, 0, 0, 0, 0, 0, 0, + 854, 0, 0, 0, 0, 0, 0, 26, 27, 28, + 0, 1323, 0, 558, 1842, 854, 854, 854, 0, 1661, + 0, 0, 0, 0, 0, 0, 0, 0, 557, 0, + 854, 0, 0, 854, 0, 0, 0, 0, 0, 0, + 854, 0, 0, 0, 0, 0, 961, 1948, 1949, 1950, + 0, 1951, 1952, 1953, 1954, 1955, 1956, 0, 0, 0, + 0, 0, 0, 0, 0, 1563, 0, 0, 1842, 1842, + 1564, 1842, 0, 0, 33, 1639, 0, 0, 1640, 0, + 0, 0, 1641, 1642, 0, 35, 0, 0, 0, 0, + 0, 0, 0, 0, 1440, 0, 0, 0, 0, 0, + 521, 0, 0, 0, 0, 0, 0, 37, 0, 0, + 0, 38, 0, 1650, 0, 0, 0, 0, 2784, 0, + -2102, -2102, 0, 0, 0, 0, 854, 854, 854, 0, + 0, 0, 0, 0, 0, 0, 557, 0, 1437, 0, + 557, 0, 1566, 0, 40, 0, 557, 1652, 1439, 1439, + 0, 0, 0, 0, 0, 43, 0, 1457, 0, 0, + 1769, 0, 0, 808, 0, 808, 854, 0, 0, 0, + 0, 0, 44, 1796, 808, 0, 0, 0, 0, 0, + 2091, 0, 0, 0, 1494, 0, 0, 0, 0, 0, + 0, 557, 0, 0, 1821, 557, 45, 0, 0, 0, + 0, 1563, 0, 0, 0, 0, 1564, 0, 0, 0, + 46, 0, 2573, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 1437, 1437, 0, 0, 0, -2102, + 0, 0, 0, 0, 0, 0, 1668, 1669, 1670, 1671, + 1672, 1673, 0, 0, -2102, 0, 0, 0, 0, 0, + 0, 0, 1623, 2890, 0, 0, 0, 0, 0, 2209, + 1847, -2102, 0, 1567, 0, 0, -2102, 1563, 0, 1866, + 0, 0, 1564, 0, 0, 854, 1568, 0, 1566, 557, + 0, 1106, 0, 557, 557, 0, 0, 557, 0, 0, + 0, 1842, 1777, 1842, 0, 1886, 0, 0, 0, 0, + 0, 1440, 0, 0, -2102, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 557, 0, 2970, 0, 0, 0, + 0, 558, 558, 0, 0, 0, 0, 0, 0, 557, + 557, 557, 557, 557, 557, 557, 557, 557, 557, 0, + 0, 0, 0, 0, 1566, 0, 1439, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 1661, + 0, 0, 2370, 0, 0, 0, 0, 0, 0, 854, + 0, 3112, 1563, 0, 0, 0, 0, 1564, 0, 0, + 0, 1777, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 1567, + 0, 1886, 0, 0, 0, 0, 0, 0, 0, 0, + 1996, 1842, 1568, 0, 0, 0, 0, 0, 0, 0, + 0, 3141, 1437, 0, 0, 0, 0, 0, 557, 0, + 0, 0, 0, 0, 0, 854, 854, 854, 854, 1230, + 0, 0, 0, 0, 0, 0, 0, 1437, 0, 1566, + 1437, 0, 0, 0, 557, 961, 0, 0, 0, 1231, + 0, -2102, 0, 3127, 0, 1567, 0, 0, 0, 0, + 0, 0, 1563, 0, 0, 0, 0, 1564, 1568, 0, + 0, 0, 0, 0, 0, 0, 557, 0, 0, 0, + 0, 0, 0, 3135, 557, 0, 0, 0, 2549, 558, + 558, 0, 558, 0, 0, 1232, 2958, 0, 0, 0, + 0, 0, 1439, 0, 0, 0, 2959, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 3164, 0, 807, + 0, 0, 1440, 1440, 0, 0, 1106, 0, 1440, 0, + 0, 0, 0, 3176, 0, 0, 0, 2209, 0, 1566, + 0, 0, 0, 2091, 0, 0, 1563, 0, 0, 0, + 0, 1564, 0, 0, 0, 0, 0, 1777, 0, -2102, + 1567, 0, 0, 1842, 0, 2960, 1668, 1669, 1670, 1671, + 1672, 1673, 0, 1568, 0, 0, 961, 557, 1437, 0, + 0, 0, 0, 0, 854, 0, 0, 0, 0, 0, + 0, 1233, 0, 0, 0, 558, 0, 0, 0, 0, + 0, 3227, 0, 0, 0, 0, 0, 0, 0, 808, + 0, 808, 0, 0, 808, 0, 0, 0, 0, 808, + 0, 0, 808, 1566, 808, 0, 0, 0, 808, 0, + 2017, 0, 2021, 0, 2194, 0, 2196, 0, 0, 0, + 1234, 0, 0, 0, 0, 1439, 2206, 0, 0, 0, + 1235, 0, 0, 1563, 0, 0, 0, 0, 1564, 0, + 1567, 0, 1236, 0, 2961, 0, 0, 0, 0, 0, + 0, 0, 0, 1568, 0, 0, 0, 0, 0, 3245, + 0, 0, 0, 1842, 0, 2243, 0, 1563, 0, 0, + 0, 0, 1564, 0, 1237, 0, 2370, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 557, 0, 2968, 0, 0, 0, 0, 0, 0, 0, - 0, 1562, 0, 0, 0, 557, 557, 557, 557, 557, - 557, 557, 557, 557, 557, 0, 1563, 0, 0, 0, + 0, 0, 0, 0, 3277, 0, 0, 0, 0, 0, + 0, 1437, 0, 0, 0, 0, 0, 0, 0, 0, 1566, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 2368, 0, - 809, 0, 0, 0, 1562, 854, 0, 0, 1560, 0, - 1563, 0, 0, 1565, 871, 1638, 0, 1776, 1639, 0, - 0, 0, 1640, 1641, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 1884, 0, 1567, - 0, 0, 0, 0, 0, 0, 1566, 1840, 0, 0, - 2226, 0, 0, 1649, 0, 0, 0, 0, 1436, 0, - -2101, 0, 0, 0, 557, 0, 0, 0, 0, 558, - 558, 854, 854, 854, 854, 0, 0, 0, 0, 0, - 0, 0, 0, 1436, 0, 0, 1436, 1651, 0, 0, - 557, 961, 1563, 0, 1768, 0, 0, 1565, 0, 3125, - 0, 0, 0, 0, 0, 0, 0, 1795, 0, 0, - 0, 0, 0, 0, 1562, 0, 0, 0, 0, 0, - 0, 0, 557, 0, 0, 0, 0, 808, 1820, 3133, - 557, 0, 0, 0, 2547, 1563, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 1566, 2863, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 3162, 0, 807, 0, 0, 0, 0, - 0, 0, 1106, 0, 0, 1567, 0, 0, 71, 3174, - 0, 0, 0, 2207, -2101, 0, 0, 0, 558, 2089, - 0, 0, 0, 1845, 0, 0, 0, 0, 0, 0, - 0, -2101, 1864, 1776, 1565, 0, -2101, 0, 0, 1840, - 0, 0, 0, 0, 0, 0, 0, 0, 1617, 0, - 0, 0, 961, 557, 1436, 0, 0, 0, 0, 0, - 854, 0, 0, 0, 0, 0, 0, 0, 1565, 0, - 0, 1567, 0, 0, -2101, 1563, 0, 3225, 0, 0, - 0, 1566, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 1438, 1438, 1438, 1438, 1438, 1438, 1560, - 0, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, 1438, - 1438, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 1660, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 1565, 0, 0, 0, 0, 3243, 0, 0, 0, 1840, - 0, 0, 1456, 0, 0, 1566, 0, 0, 808, 0, - 808, 0, 2368, 1994, 0, 0, 1567, 0, 0, 808, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 1493, - 3275, 0, 0, 1565, 0, 0, 0, 1436, 0, 0, - 0, 0, 0, 71, 0, 1562, 0, 0, 0, 1638, - 0, 0, 1639, 0, 0, 0, 1640, 1641, 1642, 1643, - 1644, 1645, 1646, 3292, 3391, 0, 0, 0, 0, 557, - 0, -2101, 0, 0, 0, 0, 557, 1647, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 1649, 0, 0, - 0, 0, 0, 3311, 1650, 0, 0, 1622, 0, 0, + 0, 0, 0, 0, 1567, 0, 0, 3294, 1239, 2102, + 0, 0, 0, 557, 0, 0, 0, 1568, 0, 0, + 557, 1386, 0, 821, 1566, 0, 0, 0, 2185, 1563, + 0, 0, 0, 1240, 1564, 0, 0, 3313, 0, 0, + 0, 0, 0, 0, 2353, 2354, 2356, 2357, 2358, 0, + 0, 0, 1242, 0, 2962, 0, 0, 2963, 0, 0, + 0, 3325, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 1563, 1440, 0, 0, 0, 1564, 0, 0, + 0, 0, 0, 557, 0, 0, 1387, 1388, 557, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 1566, 0, 0, 0, 1567, 3323, 0, 0, - 71, 1651, 71, 1638, 0, 0, 1639, 0, 1438, 1438, - 1640, 1641, 1642, 1643, 1644, 1645, 1646, 0, 0, 557, - 0, 0, 0, 1565, 557, 0, 1566, 0, 0, 0, - 0, 1647, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 1649, 71, 0, 0, 0, 558, 558, 1650, 0, - 557, 14, 15, 0, 0, 0, 1563, 0, 71, -2101, - 0, 0, 0, 0, 0, 0, 1667, 1668, 1669, 1670, - 1671, 1672, 557, 557, 0, 1651, 0, 0, 0, 0, - 1567, 0, 0, 0, 0, 0, 0, 0, 0, 854, - 0, 1776, 0, 0, 0, 0, 557, 23, 1652, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 1566, 0, - 854, 0, 0, 3394, 0, 1653, 0, 0, 0, 0, - 1654, 0, 0, 0, 1438, 0, 0, 2192, 0, 2194, - 0, 0, 0, 1436, 0, 1106, 0, 557, 1011, 2204, - 1011, 0, 0, 1655, 1656, 557, 0, 0, 0, 0, - 0, 1566, 0, 0, 0, 0, 0, 0, 1657, 0, - 0, 0, 0, 0, 1106, 0, 0, 0, 3174, 0, - 0, 0, 1652, 0, 0, 854, 0, 0, 2241, 0, - 0, 0, 0, 0, 71, 0, 0, 1567, 0, 1653, - 0, 0, 0, 0, 1654, 0, 1658, 0, 0, 1659, - 0, 0, 0, 0, 0, 854, 0, 0, 0, 0, - 71, 0, 0, 1660, 0, 0, 1661, 1655, 1656, 0, - 0, 1567, 0, 558, 558, 0, 558, 0, 0, 0, - 0, 0, 1657, 0, 0, 0, 0, 0, 0, 0, - 26, 27, 28, 3292, 0, 0, 0, 0, 0, 0, - 1638, 1106, 0, 1639, 0, 0, 0, 1640, 1641, 0, - 0, 1566, 0, 0, 0, 0, 3394, 0, 0, 0, - 1658, 0, 0, 1659, 0, 0, 2351, 2352, 2354, 2355, - 2356, 0, 0, 0, 1565, 0, 0, 1660, 1649, 0, - 1661, 0, 0, 1776, 0, -2101, 0, 0, 0, 0, - 0, 0, 0, 1567, 0, 961, 961, 33, 3394, 961, - 0, 0, 0, 0, 0, 1662, 0, 1980, 35, 0, - 0, 0, 1651, 0, 0, 0, 0, 0, 557, 558, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 37, 0, 0, 808, 38, 808, 1567, 0, 808, 0, - 1776, 0, 0, 808, 0, 0, 808, 3394, 808, 0, - 0, 0, 808, 0, 2015, 0, 2019, 0, 0, 0, - 1386, 1387, 0, 0, 0, 0, 0, 40, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 2866, 43, 1662, - 0, 0, 0, 0, 961, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 44, 0, 0, 0, 2207, - 0, 1388, 1389, 0, 0, 1390, 1391, 1638, 2475, -2101, - 1639, 0, 0, 1663, 1640, 1641, 1664, 1665, 1666, 45, - 1667, 1668, 1669, 1670, 1671, 1672, -2101, 0, 0, 0, - 0, -2101, 0, 46, 2527, 0, 0, 0, 0, 1438, - 1438, 0, 0, 0, 0, 1649, 1567, 0, 0, 0, - 0, 0, -2101, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 1121, 1121, 0, 0, 0, -2101, - 0, 0, 0, 2100, 0, 0, 0, 0, 0, 1651, - 0, 1392, 1393, 0, 0, 0, 0, 1663, 0, 0, - 1664, 1665, 1666, 0, 1667, 1668, 1669, 1670, 1671, 1672, - 0, 0, 0, 0, 0, 0, 0, 1930, 0, 0, - 0, 0, 1566, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 1660, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 1259, 0, 0, 0, 1301, - 1308, 0, 0, 0, 2867, 1394, 1395, 1396, 1397, 1398, - 1399, 1400, 1401, 0, 0, 1402, 1403, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 1566, 0, 0, 0, + 0, 1567, 0, 0, 557, 0, 0, 0, 0, 0, + 0, 3413, 0, 0, 1568, 0, 0, 1389, 1390, 0, + 0, 1391, 1392, 0, 0, 0, 557, 557, 0, 0, + 0, 0, 0, 0, 0, 1567, 0, 0, 0, 1566, + 558, 0, 0, 854, 0, 1777, 0, 0, 1568, 0, + 557, 0, 0, 0, 0, 0, 0, 1788, 0, 558, + 0, 0, 0, 0, 854, 0, 0, 3396, 0, 558, + 0, 558, 1563, 0, 558, 0, 2477, 1564, 0, 0, + 558, 0, 558, 0, 0, 0, 0, 1437, 0, 1106, + 0, 557, 1011, 0, 1011, 558, 0, 1393, 1394, 557, + 558, 0, 0, 0, 558, 558, 558, 558, 0, 558, + 558, 0, 0, 0, 0, 0, 0, 1567, 1106, 0, + 0, 0, 3176, 0, 0, 0, 0, 0, 0, 854, + 1568, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 1566, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 854, + 1567, 1395, 1396, 1397, 1398, 1399, 1400, 1401, 1402, 0, + 0, 1403, 1404, 1568, 0, 0, 0, 1440, 1440, 1440, + 1440, 1440, 1440, 0, 0, 1440, 1440, 1440, 1440, 1440, + 1440, 1440, 1440, 1440, 1440, 0, 0, 3294, 0, 0, + 0, 0, 0, 0, 0, 1106, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, -2101, 0, 0, 0, + 3396, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 1358, -2101, 0, 0, 0, 0, -2101, 0, + 0, 0, 0, 0, 0, 1405, 1406, 1777, 0, 0, + 0, 0, 0, 1121, 1121, 0, 0, 0, 0, 961, + 961, 0, 3396, 961, 0, 558, -46, 0, 0, 0, + 1567, 1982, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 557, 1568, 0, 0, 1407, 1408, 1, 0, + 808, 0, 0, 0, 722, 0, 808, 0, 2, 0, + 3, 4, 2493, 0, 1777, 0, 0, 2021, 0, 0, + 0, 3396, 0, 5, 0, 0, 0, 0, 6, 0, + 0, 0, 0, 0, 1259, 0, 0, 7, 1302, 1309, + 0, 0, 0, 1563, 0, 0, 0, 0, 1564, 0, + 0, 8, 0, 0, 0, 0, 1639, 0, 961, 1640, + 9, 723, 10, 1641, 1642, 1643, 1644, 1645, 1646, 1647, + 0, 0, 0, 2209, 11, 0, 12, 724, 0, 0, + 0, 0, 1440, 1440, 1648, 0, 0, 13, 0, 0, + 0, 1359, 1409, 1410, 1650, 0, 0, 0, 2102, 0, + 0, 1651, 14, 15, 16, 0, 0, 0, 1623, 1383, + 0, 0, 0, 17, 0, 1431, 1411, 1412, 1433, 18, + 1566, 1444, 1447, 1452, 1455, 0, 725, 19, 1652, 20, + 21, 0, 0, 0, 0, 0, 726, 0, 0, 0, + 0, 0, 0, 0, 22, 0, 2712, 0, 23, 727, + 0, 0, 0, 0, 728, 0, 0, 0, 0, 0, + 0, 2728, 2729, 2731, 0, 0, 1498, 1302, 0, 0, + 0, 0, 0, 0, 24, 0, 2742, 0, 0, 2745, + 0, 0, 0, 729, 808, 0, 2754, 0, 1582, 0, + -1468, 0, 0, 0, 0, 0, 558, 0, 1440, 0, + 0, 808, 0, 0, 0, 0, 0, 1598, 0, 0, + 0, 0, 0, 0, 0, 0, 25, 0, 1608, 1609, + 1610, 0, 1615, 1619, 0, 1653, 730, 0, 0, 0, + 731, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 1567, 1654, 0, 0, 558, 0, 1655, 0, 0, + 0, 2634, 0, 0, 1568, 0, 0, 0, 1682, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 1382, 0, 0, 0, 558, 0, 1430, 0, 0, 1432, - 0, 0, 1443, 1446, 1451, 1454, -2101, 0, 0, 1404, - 1405, 0, 0, 558, 0, 0, -2101, 1438, 0, 0, - 0, 0, 0, 558, 0, 558, 0, 0, 558, 0, - 0, 0, 0, 0, 558, 0, 558, 0, 0, 0, - 0, 0, 3110, 0, 0, 0, 0, 1497, 1301, 558, - 1406, 1407, 0, 0, 558, 0, 0, 0, 558, 558, - 558, 558, 0, 558, 558, 1637, 0, 0, 0, 1581, - 1638, 1660, 0, 1639, 0, 0, 0, 1640, 1641, 1642, - 1643, 1644, 1645, 1646, 0, 0, 0, 1567, 1597, 0, - 0, 0, 3139, 0, 0, 0, 0, 0, 1647, 1607, - 1608, 1609, 1648, 1614, 1618, 0, 0, 0, 1649, 0, - 0, 0, 0, 0, -2101, 1650, 0, 0, 0, 0, - 0, 1667, 1668, 1669, 1670, 1671, 1672, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 1681, - 0, 0, 1651, 0, 0, 0, 1408, 1409, 2710, 0, - 0, 0, 0, 0, 0, 0, 0, 1497, 1497, 0, - 0, 0, 0, 2726, 2727, 2729, 0, 0, 0, 0, - 1410, 1411, 0, -2101, 0, 0, 0, 0, 2740, 0, - 0, 2743, 0, 1438, 0, 0, 0, 0, 2752, 0, - 2032, 0, 1638, 1719, 0, 1639, 0, 1735, 1740, 1640, - 1641, 1642, 1643, 1644, 1645, 1646, 0, 1638, 1121, 1121, - 1639, 0, 11, 0, 1640, 1641, 0, 0, 558, 0, - 1647, 0, 0, 0, 2843, 0, 0, 0, 0, 0, - 1649, 0, 0, 0, 0, 0, 0, 1650, 0, 1652, - 14, 15, 0, 808, 0, 1649, 0, 0, 0, 808, - 0, 0, -2101, 0, 0, 2491, 1653, 0, 0, 0, - 2019, 1654, 0, 0, 1651, 0, 0, 0, 1301, 0, - 0, 0, 0, 0, 2789, 2790, 2791, 1301, 0, 1651, - 0, -2101, 0, 0, 1655, 1656, 23, 0, 1667, 1668, - 1669, 1670, 1671, 1672, 0, 0, 0, 0, 0, 1657, - 0, 1301, 0, 0, 0, 0, 0, 0, 0, 0, + 1656, 1657, 2791, 2792, 2793, 0, 1498, 1498, 0, 0, + 0, 0, 0, 0, 0, 1658, 0, 0, 0, 0, + 0, 26, 27, 28, 544, 0, 0, 0, 0, 29, + 732, 0, 30, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 1720, 0, 0, 733, 1736, 1741, 0, 0, + 0, 0, 0, 1659, 0, 0, 1660, 1121, 1121, 0, + 0, 0, 0, 31, 0, 0, 0, 0, 0, 0, + 1661, 0, 32, 1662, 0, 0, 0, 0, 0, 0, + 734, 0, 0, 735, 0, 0, 0, 0, 33, 0, + 0, 0, 0, 0, 736, 34, 1217, 737, 0, 35, + 0, 0, 1218, 0, 0, 0, 0, 558, 0, 36, + 1230, 0, 0, 0, 0, 738, 0, 1302, 0, 0, + 0, 37, 0, 0, 0, 38, 1302, 0, 0, 739, + 1231, 0, 0, 0, 0, 740, 741, 0, 0, 0, + 0, 0, 0, 0, 0, 39, 742, 0, 0, 0, + 1302, 2908, 743, 0, 0, 0, 0, 0, 40, 0, + 0, 41, 0, 0, 42, 0, 0, 0, 0, 43, + 0, 0, 1663, 0, 0, 0, 1232, 0, 0, 0, + 744, 0, 0, 0, 0, 0, 44, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 1638, 0, 0, 1639, 0, 0, 1438, 1640, 1641, 1642, - 1643, 1644, 1645, 1646, 0, 0, 0, 1658, 0, 0, - 1659, 2100, 0, 0, 3152, 0, 0, 0, 1647, 0, - 0, 1622, 0, 0, 1660, 0, 0, 1661, 1649, 0, - 0, 1652, 0, 0, 0, 1650, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, -2101, 0, 1653, 0, - 0, 0, 0, 1654, 0, 0, 0, 1927, 0, 0, - 0, 0, 1651, -2101, 0, 0, 0, 0, -2101, 0, - 0, 0, 0, 0, 0, 0, 1655, 1656, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 1219, 0, 0, + 45, 0, 0, 0, 0, 558, 0, 0, 0, 558, + 0, 0, 0, 0, 46, 2017, 0, -46, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 1929, 0, 0, + 0, 0, 0, 0, 0, 3051, 0, 0, 0, 0, + 0, 0, 0, 1440, 1440, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 1657, 0, 2906, 0, 0, 0, 808, 0, 26, - 27, 28, 0, 0, 0, 0, -2101, 0, 0, 558, - 0, 0, 0, 0, 808, 0, 0, 0, 0, 0, - 1451, 0, 1451, 1451, 0, 0, 1662, 0, 0, 1658, - 0, 0, 1659, 0, 0, 1121, 1121, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 1660, 0, 0, 1661, - 0, 0, 0, 0, 0, 0, 1121, 0, 558, 1652, - 0, 1660, 0, 0, 2632, 0, 33, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 1653, 35, 0, 0, - 0, 1654, 0, 0, 0, 0, 0, 3049, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 37, - 0, 0, 0, 38, 1655, 1656, 0, 0, 0, 0, - 0, 0, 3411, 0, 0, 0, 0, 0, 0, 1657, - 0, 0, 0, 39, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 1663, 0, 40, 1664, 1665, 1666, - 0, 1667, 1668, 1669, 1670, 1671, 1672, 43, 1662, 0, - 0, 0, 0, 3089, 3090, 3091, 3092, 1658, 2064, 0, - 1659, 0, 0, -2101, 44, 0, 2067, 0, 0, 0, - 0, 0, 0, 0, 1660, 0, 0, 1661, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 45, 0, - 558, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 2112, 0, 46, 0, 0, 0, 0, 2116, 0, 0, - 0, 0, 0, 2120, 2121, 2122, 2123, 2124, 2125, 2126, - 2127, 0, 0, 0, 0, 2136, 2137, 0, 0, 0, - 2150, 0, 0, 0, 2153, 0, 0, 2161, 2162, 2163, - 2164, 2165, 2166, 2167, 2168, 2169, 0, 0, 2170, 0, - 0, 0, 0, 0, 0, 1121, 1663, 1301, 0, 1664, - 1665, 1666, 0, 1667, 1668, 1669, 1670, 1671, 1672, 0, - 0, -2101, 0, 2106, 0, 2196, 1662, 0, 1667, 1668, - 1669, 1670, 1671, 1672, 0, 0, 0, 0, 0, 0, + 2840, 0, 1233, 0, 2102, 0, 0, 0, 0, 0, + 1664, 0, 0, 1665, 1666, 1667, 0, 1668, 1669, 1670, + 1671, 1672, 1673, 0, 0, 0, 0, 0, 0, 0, + 1452, 2529, 1452, 1452, 0, 0, 0, 0, 0, 0, + 0, 3091, 3092, 3093, 3094, 1121, 1121, 0, 0, 0, + 0, 1234, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 1235, 0, 0, 0, 0, 1121, 0, 0, 0, + 0, 0, 0, 1236, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 558, 0, - 0, 0, 558, 0, 0, 0, 0, 0, 2015, 1608, - 1609, 0, 3212, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 558, 558, 1220, 0, 558, 0, 0, 0, + 0, 0, 0, 0, 0, 1237, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 558, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 558, 558, + 558, 558, 558, 558, 558, 558, 558, 558, 0, 0, + 0, 0, 0, 2299, 0, 0, 0, 1222, 0, 1239, + 0, 0, 0, 0, 0, 0, 0, 0, 2066, 0, + 0, 0, 0, 0, 0, 0, 2069, 0, 0, 0, + 0, 1440, 0, 0, 1240, 0, 0, 0, 0, 2300, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 3214, 0, 0, 1242, 0, 0, 1440, 0, 0, 0, + 2114, 0, 0, 0, 0, 0, 0, 2118, 0, 0, + 0, 0, 0, 2122, 2123, 2124, 2125, 2126, 2127, 2128, + 2129, 0, 0, 0, 0, 2138, 2139, 2017, 0, 0, + 2152, 0, 0, 0, 2155, 0, 0, 2163, 2164, 2165, + 2166, 2167, 2168, 2169, 2170, 2171, 0, 0, 2172, 0, + 1224, 0, 0, 2493, 0, 1121, 0, 1302, 0, 0, + 0, 1639, 0, 0, 1640, 0, 0, 0, 1641, 1642, + 0, 0, 0, 0, 0, 2198, 0, 0, 0, 1639, + 0, 0, 1640, 0, 0, 2102, 1641, 1642, 1643, 1644, + 1645, 1646, 1647, 2102, 0, 0, 0, 0, 0, 1650, + 0, 0, 0, 0, 0, 0, -2102, 1648, 0, 1609, + 1610, 0, 0, 0, 0, 0, 0, 1650, 0, 0, + 0, 0, 0, 0, 1651, 0, 0, 0, 808, 0, + 0, 0, 0, 1652, 0, 0, 0, 1440, 0, 0, + 0, 1638, 0, 0, 0, 0, 1639, 0, 0, 1640, + 0, 1652, 0, 1641, 1642, 1643, 1644, 1645, 1646, 1647, + 0, 1639, 0, 0, 1640, 0, 0, 0, 1641, 1642, + 0, 0, 0, 0, 1648, 0, 0, 0, 1649, 0, + 0, 0, 0, 0, 1650, 0, 558, 0, 0, 0, + 0, 1651, 0, 0, 0, 0, 0, 0, 2865, 1650, + 2324, 0, 0, 0, 0, 1302, -2102, 0, 2334, 2335, + 0, 0, 0, 1639, 0, 0, 1640, 0, 1652, 0, + 1641, 1642, 1643, 1644, 1645, 1646, 1647, 0, 0, 0, + -2102, 0, 0, 1652, 0, 0, 0, 0, 0, 0, + 0, 1648, 0, 0, 0, 2845, 0, -2102, 1653, 1302, + 0, 1650, -2102, 0, 0, 0, 0, 0, 1651, 0, + 0, 0, 0, 0, 0, 1654, 0, 0, 0, 0, + 1655, 0, 0, 0, 1359, 2401, 0, 0, 0, 0, + 1440, 0, 0, 0, 1639, 1652, 0, 1640, 0, 0, + -2102, 1641, 1642, 1656, 1657, 1645, 1646, 1647, 2868, 3370, + 0, 0, 0, 2427, 2428, 0, 2429, 0, 1658, 0, + 0, 0, 1648, 0, 0, 1653, 0, 0, 0, 0, + 3394, 0, 1650, 0, 0, 0, 0, 0, 0, 1651, + -2102, 0, 1654, 0, 0, 2455, 2456, 1655, 0, 2198, + 0, 0, 0, 0, 0, 1661, 1659, -2102, 0, 1660, + 0, 0, -2102, 0, 0, 0, 1652, 0, 0, 0, + 1656, 1657, 3302, 1661, 0, 0, 1662, 0, 0, 2493, + 2481, 0, 0, 0, 0, 1658, 0, 2487, 0, 0, + 0, 0, 1653, 0, 1639, 3434, 0, 1640, 0, 0, + -2102, 1641, 1642, 0, 0, 1498, 0, 1302, 0, 1654, + 0, 0, 0, 0, 1655, 0, 0, 0, 0, 0, + 0, 0, 0, 1659, 0, 3460, 1660, 1441, 0, 0, + 0, 0, 1650, 0, 0, 0, 0, 1656, 1657, -2102, + 1661, 0, 558, 1662, 0, 2522, 0, 558, 0, 0, + 0, 0, 1658, 0, 0, 1661, 0, -2102, 0, 0, + 0, 0, 0, 1653, 0, 0, 1652, 0, 0, 0, + 0, 0, 0, 558, 0, 1663, 0, 0, 0, 0, + 1654, 0, 2539, 0, 0, 1655, 2545, 0, 0, 0, + 1659, 2553, 2554, 1660, 0, 558, 558, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 1440, 1661, 1656, 1657, + 1662, 0, 0, 0, 0, 0, 0, 0, 0, 558, + 0, 0, 0, 1658, 0, 0, 0, 0, 0, 0, + 0, 2869, 0, 0, 0, 0, 0, 0, 2575, 0, + 0, 2578, 1663, 2580, 0, 0, 0, 0, 0, 0, + 0, 1676, 0, 0, 0, 0, 0, -2102, 0, 2584, + 558, 1659, 0, -2102, 1660, -2102, 0, 0, 2102, 0, + 0, 0, 1668, 1669, 1670, 1671, 1672, 1673, 1661, 0, + -2102, 1662, 0, 1664, 0, -2102, 1665, 1666, 1667, 0, + 1668, 1669, 1670, 1671, 1672, 1673, 0, 0, 0, 1720, + 1676, 0, 0, 1932, 0, 0, 0, 0, 0, 1663, + 0, 0, 0, 0, 0, 0, 1741, 2170, 0, 0, + 0, 0, 0, -2102, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 1441, 1121, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 2640, 0, + 1664, 0, 0, 1665, 1666, 1667, 0, 1668, 1669, 1670, + 1671, 1672, 1673, 0, 0, -2102, 0, 0, 0, 0, + 0, 0, 1668, 1669, 1670, 1671, 1672, 1673, 1661, 0, + 1663, 0, 0, 0, 0, 0, 0, 0, 0, 1676, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 2838, 0, 0, 0, 2100, 0, 0, + 0, 0, 0, 0, 0, 1610, 0, 0, 0, 0, + 0, 1302, 0, 0, 0, 0, 0, 1664, 0, 0, + 1665, 1666, 1667, 0, 1668, 1669, 1670, 1671, 1672, 1673, + 0, 0, 1676, 0, 2108, 0, 0, 0, 0, 1676, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 558, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 1663, 0, 0, 1664, 1665, 1666, - 0, 1667, 1668, 1669, 1670, 1671, 1672, 0, 0, 0, - 2322, 2106, 0, 0, 1301, 0, 0, 2332, 2333, 0, + 0, 0, 2752, 0, 1639, 0, 0, 1640, 0, 0, + -2102, 1641, 1642, 1643, 1644, 1645, 1646, 1647, 1664, 1676, + 0, 1665, 1666, 1667, 0, 1668, 1669, 1670, 1671, 1672, + 1673, 0, 1648, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 1650, 1676, 0, 0, 0, 0, 0, 1651, + 0, 0, 1639, 0, 0, 1640, 0, 0, 0, 1641, + 1642, 1643, 1644, 1645, 1646, 1647, 0, 0, 0, 0, + 0, 1639, 0, 0, 1640, 0, 1652, 0, 1641, 1642, + 1648, 0, 1645, 1646, 1647, 0, 0, 0, 0, 0, + 1650, 1676, 0, 1676, 0, 1441, 1441, 1651, 1957, 1648, + 0, 1441, 0, 0, 1676, 0, 0, 1676, 0, 1650, + 0, 0, 1676, 0, 0, 1676, 1651, 0, -2102, 0, + 0, 0, 0, 0, 1652, 1668, 1669, 1670, 1671, 1672, + 1673, 0, 0, 0, 0, 2830, 0, 0, 0, 0, + 0, 2832, 2069, 1652, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 2841, 0, 1676, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 2854, 1653, 0, 2857, 0, 2859, 0, 0, + 0, 0, 0, 0, 0, 2863, 0, 0, 0, 0, + 1654, 0, 0, 2870, 2871, 1655, 0, 0, 0, 0, + 2878, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 2887, 0, 0, 1656, 1657, + 0, 1653, 0, 0, 0, 2902, 0, 0, 0, 0, + 0, 0, 0, 1658, 0, 0, 0, 0, 1654, 0, + 1653, 0, 1676, 1655, 0, 1121, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 1654, 1676, 0, + 0, 0, 1655, 0, 0, 0, 1656, 1657, 1676, 1676, + 1676, 1659, 0, 0, 1660, 1676, 0, 0, 0, 1676, + 0, 1658, 0, 0, 0, 1656, 1657, 0, 1661, 0, + 0, 1662, 0, 0, 0, 722, 0, 0, 0, 0, + 1658, 0, 0, 0, 2324, 0, 2324, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 1659, + 0, 0, 1660, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 1661, 0, 1659, 1662, + 0, 1660, 1676, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 723, 0, 0, 1661, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 724, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 1676, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 1663, 0, 0, 0, 0, 0, 1676, 0, 0, 0, + 0, 1676, 0, 0, 0, 0, 3107, 3108, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 725, 1957, 0, + 0, 0, 0, 0, 0, 0, 0, 726, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 1663, 0, + 727, 3131, 0, 0, 0, 728, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 1663, 0, 0, + 0, 3140, 0, 0, 0, 0, 0, 3144, 3145, 0, + 0, 0, 3146, 0, 729, 0, 0, 3149, 0, 0, + 3152, 3153, 0, 0, 0, 2324, 1302, 1639, 0, 3161, + 1640, 0, 0, 0, 1641, 1642, 0, 0, 1664, 0, + 1121, 1665, 1666, 1667, 0, 1668, 1669, 1670, 1671, 1672, + 1673, 0, 0, 0, 0, 2108, 0, 730, 0, 0, + 0, 731, 0, 0, 0, 1650, 0, 0, 0, 0, + 0, 0, -2102, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 3202, 0, 1664, 0, 0, 1665, + 1666, 1667, 0, 1668, 1669, 1670, 1671, 1672, 1673, 1652, + 0, 0, 0, 2426, 0, 1664, 0, 0, 1665, 1666, + 1667, 3221, 1668, 1669, 1670, 1671, 1672, 1673, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 1676, + 0, 732, 0, 0, 0, 0, 0, 1957, 1957, 0, + 1441, 1441, 1441, 1441, 1441, 1441, 733, 0, 1441, 1441, + 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1441, 1957, 0, + 0, 0, 0, 1639, 3154, 0, 1640, 0, 0, 0, + 1641, 1642, 1643, 1644, 1645, 1646, 1647, 0, 0, 0, + 0, 734, 0, 0, 735, 0, 0, 0, 0, 0, + 0, 1648, 0, 0, 0, 736, -2102, 0, 737, 0, + 0, 1650, 0, 0, 0, 0, 0, 0, 1651, 0, + 0, 0, 0, -2102, 0, 0, 738, 0, -2102, 0, + 0, 0, 0, 0, 2752, 0, 0, 0, 0, 0, + 739, 0, 0, 0, 0, 1652, 0, 741, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 742, 0, 0, + 0, 1619, 0, 743, 0, 0, -2102, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 1676, 0, 0, 1676, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 558, 0, 0, 1638, 558, 558, 1639, 1301, 558, - 0, 1640, 1641, 1642, 1643, 1644, 1645, 1646, 0, 0, + 0, 744, 0, 0, 0, 2545, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 1647, 1358, 2399, 0, 558, 0, 0, 0, - 0, 0, 1649, 0, 0, 0, 0, 0, 0, 1650, - 0, 558, 558, 558, 558, 558, 558, 558, 558, 558, - 558, 0, 2425, 2426, 0, 2427, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 1651, 0, 0, 0, - 0, 0, 1217, 0, 0, -46, 0, 0, 1218, 0, - 0, 0, 0, 0, 2453, 2454, 1230, 0, 2196, 1217, - 0, 0, 0, 0, 0, 1218, 0, 1, 0, 0, - 0, 0, 0, 1230, 0, 0, 1231, 2, 0, 3, - 4, 0, 0, 0, 0, 0, 0, 0, 0, 2479, - 0, 0, 5, 1231, 0, 0, 2485, 6, 0, 0, - 0, 0, 0, 0, 0, 0, 7, 0, 0, 0, - 2015, 0, 0, 0, 1497, 0, 1301, 0, 0, 0, - 8, 0, 1232, 0, 0, 0, 0, 0, 0, 9, - 0, 10, 0, 1652, 0, 0, 2491, 0, 0, 1232, - 0, 3368, 0, 11, 0, 12, 0, 0, 0, 0, - 1653, 0, 0, 1219, 2520, 1654, 13, 0, 0, 0, - 0, 0, 3392, 0, 0, 0, 0, 0, 2100, 0, - 1219, 14, 15, 16, 0, 0, 2100, 0, 1655, 1656, - 0, 0, 17, 0, 0, 0, 0, 0, 18, 0, - 0, 2537, 0, 1657, 0, 2543, 19, 0, 20, 21, - 2551, 2552, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 808, 0, 22, 0, 0, 0, 23, 1233, 0, - 0, 0, 0, 0, 0, 0, 0, 3432, 0, 0, - 0, 1658, 0, 0, 1659, 1233, 0, 0, 0, 0, - 0, 0, 0, 24, 0, 0, 0, 2573, 1660, 0, - 2576, 1661, 2578, 0, 0, 0, 0, 3458, 0, -1467, - 0, 0, 0, 0, 0, 0, 0, 1234, 2582, 558, - 0, 0, 0, 0, 0, 0, 0, 1235, 0, 0, - 0, 0, 0, 0, 1234, 25, 0, 0, 0, 1236, - 0, 0, 0, 0, 1235, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 1638, 0, 1236, 1639, 1719, 0, - 1220, 1640, 1641, 1642, 1643, 1644, 1645, 1646, 0, 0, - 0, 1237, 0, 0, 0, 1740, 2168, 1220, 0, 0, - 0, 0, 1647, 0, 0, 0, 0, 0, 1237, 0, - 0, 0, 1649, 0, 1121, 0, 0, 0, 0, 1650, - 1662, 0, 0, 0, 0, 0, 0, 2638, 0, 0, - 26, 27, 28, 0, 0, 0, 0, 0, 29, 1238, - 0, 30, 0, 1222, 0, 1239, 1651, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 2297, 0, 0, 0, - 1222, 0, 1239, 0, 0, 0, 0, 1440, 0, 0, - 1240, 0, 31, 0, 0, 1241, 0, 0, 0, 0, - 0, 32, 0, 0, 1609, 0, 0, 1240, 0, 1242, - 1301, 0, 2298, 0, 0, 0, 0, 33, 0, 0, - 0, 0, 0, 0, 34, 0, 1242, 0, 35, 0, - 0, 0, 0, 0, 0, 3300, 0, 0, 36, 0, - 0, 0, 2491, 0, 0, 0, 0, 0, 1663, 0, - 37, 1664, 1665, 1666, 38, 1667, 1668, 1669, 1670, 1671, - 1672, 0, 0, 1652, 0, 2424, 1224, 0, 0, 0, - 0, 2750, 0, 0, 39, 0, 0, 0, 0, 0, - 1653, 0, 0, 1224, 0, 1654, 0, 40, 0, 0, - 41, 0, 0, 42, 0, 0, 0, 0, 43, 0, - 0, 0, 0, 0, 0, 558, 0, 0, 1655, 1656, - 558, 1675, 0, 0, 0, 44, 0, 1638, 0, 0, - 1639, 0, 0, 1657, 1640, 1641, 1642, 1643, 1644, 1645, - 1646, 0, 0, 0, 0, 0, 558, 0, 0, 45, - 0, 0, 0, 0, 0, 1647, 0, 0, 0, 0, - 0, 0, 0, 46, 0, 1649, -46, 0, 558, 558, - 1675, 1658, 1650, 0, 1659, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 1660, 0, - 0, 1661, 558, 0, 0, 0, 0, 0, 0, 1651, - 0, 0, 0, 0, 1440, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 2828, 0, 0, 0, 0, 0, - 2830, 2067, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 558, 0, 2839, 0, 0, 0, 0, - 0, 2100, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 2852, 0, 0, 2855, 0, 2857, 0, 0, 1675, - 0, 0, 0, 0, 2861, 0, 0, 0, 0, 0, - 0, 0, 2868, 2869, 0, 0, 0, 0, 0, 2876, + 0, 0, 3317, 3318, 0, 0, 3319, 0, 1610, 0, + 0, 1661, 0, 0, 1676, 0, 0, 0, 1676, 0, + 0, 0, 1676, 1676, 1676, 1676, 1676, 1676, 1676, 1676, + 0, 0, 1653, 3337, 0, 1441, 1441, 0, 1676, 1676, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 1654, + 0, 0, 1676, 0, 1655, 1676, 0, 3349, 0, 0, + 0, 0, 0, 1676, 1676, 1676, 1676, 1676, 1676, 1676, + 1676, 1676, 1676, 0, 0, 0, 0, 1656, 1657, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 1662, 0, 0, 0, 2885, 0, 1652, 0, 0, 0, - 0, 1675, 0, 0, 2900, 0, 0, 0, 1675, 0, - 0, 0, 0, 1653, 0, 0, 0, 0, 1654, 0, - 0, 0, 0, 0, 1121, 0, 0, 0, 0, 0, + 0, 0, 1658, 0, 0, 0, 0, 0, 1676, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 1655, 1656, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 1657, 0, 1675, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 722, + 0, 0, 0, -2102, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 1675, 2322, 0, 2322, 0, 0, 0, 0, - 0, 0, 0, 0, 1658, 0, 0, 1659, 1663, 0, - 0, 1664, 1665, 1666, 0, 1667, 1668, 1669, 1670, 1671, - 1672, 1660, 0, 0, 1661, 2524, 0, 0, 0, 0, - 0, 0, 0, 0, 558, 0, 723, 0, 0, 0, - 1675, 0, 1675, 0, 1440, 1440, 0, 1955, 0, 0, - 1440, 0, 724, 1675, 0, 0, 1675, 0, 0, 0, - 0, 1675, 0, 0, 1675, 0, 0, 0, 0, 0, + 1659, 0, 0, 1660, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 3107, 0, 1661, 0, 3410, + 1662, 1441, 0, 1121, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 3420, 0, 0, + 0, 0, 2324, 0, 2324, 0, 0, 0, 0, 0, + 0, 0, 1121, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 1638, 0, 0, 1639, 0, 0, 0, 1640, 1641, - 1642, 1643, 1644, 1645, 1646, 3105, 3106, 0, 0, 0, - 0, 725, 0, 0, 0, 0, 0, 1675, 0, 1647, - 0, 726, 0, 0, 0, 0, 0, 0, 0, 1649, - 0, 0, 0, 1662, 727, 0, 1650, 0, 0, 728, - 3129, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 3445, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 3138, 0, 0, 1651, 0, 0, 3142, 3143, 729, 0, - 0, 3144, 0, 0, 0, 0, 3147, 0, 0, 3150, - 3151, 0, 0, 0, 2322, 1301, 0, 0, 3159, 0, + 0, -2102, 0, 0, 1676, 0, 0, 0, 1668, 1669, + 1670, 1671, 1672, 1673, 1676, 1676, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 3470, 0, 1663, + 0, 0, 0, 0, 0, 0, 0, 3107, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1121, - 0, 1675, 0, 1385, 0, 821, 0, 0, 0, 0, - 0, 730, 0, 0, 0, 731, 0, 1675, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 1675, 1675, 1675, - 0, 0, 0, 0, 1675, 0, 0, 0, 1675, 0, - 0, 1663, 0, 3200, 1664, 1665, 1666, 0, 1667, 1668, - 1669, 1670, 1671, 1672, 0, 0, 0, 0, 2557, 0, - 1652, 0, 0, 0, 0, 0, 0, 0, 1386, 1387, - 3219, 0, 0, 0, 0, 0, 0, 1653, 0, 0, - 0, 0, 1654, 0, 0, 732, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 1386, 1387, 0, 0, 0, - 733, 1675, 0, 0, 0, 1655, 1656, 0, 0, 1388, - 1389, 0, 0, 1390, 1391, 0, 0, 0, 0, 0, - 1657, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 734, 1388, 1389, 735, 1675, - 1390, 1391, 0, 0, 0, 0, 0, 0, 0, 736, - 0, 0, 737, 0, 0, 1675, 0, 0, 1658, 0, - 1675, 1659, 0, 0, 0, 0, 0, 0, 0, 0, - 738, 0, 0, 0, 0, 1660, 0, 1955, 1661, 0, - 0, 0, 0, 2750, 739, 0, 0, 0, 0, 1392, - 1393, 741, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 742, 0, 0, 0, 0, 0, 743, 0, 0, - 1618, 0, 0, 0, 0, 0, 1392, 1393, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 744, 0, 0, 0, 0, - 0, 0, 0, 0, 2543, 0, 0, 0, 0, 0, - 0, 0, 0, 1394, 1395, 1396, 1397, 1398, 1399, 1400, - 1401, 3315, 3316, 1402, 1403, 3317, 0, 1609, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 1662, 0, 0, - 1394, 1395, 1396, 1397, 1398, 1399, 1400, 1401, 0, 0, - 1402, 1403, 3335, 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, 1404, 1405, 0, - 0, 0, 0, 0, 0, 0, 0, 1675, 0, 0, - 0, 0, 0, 0, 0, 1955, 1955, 0, 1440, 1440, - 1440, 1440, 1440, 1440, 1404, 1405, 1440, 1440, 1440, 1440, - 1440, 1440, 1440, 1440, 1440, 1440, 1955, 0, 1406, 1407, - 0, 0, 0, 0, 0, 1663, 0, 0, 1664, 1665, - 1666, 0, 1667, 1668, 1669, 1670, 1671, 1672, 0, 0, - 0, 0, 2770, 0, 3105, 1406, 1407, 0, 3408, 0, - 1638, 0, 1121, 1639, 0, 0, 0, 1640, 1641, 1642, - 1643, 1644, 1645, 1646, 0, 0, 3418, 0, 0, 0, - 0, 2322, 0, 2322, 0, 0, 0, 0, 1647, 0, - 0, 1121, 0, 0, 0, 0, 0, 0, 1649, 0, - 1638, 0, 0, 1639, 0, 1650, 0, 1640, 1641, 3443, - 0, 1644, 1645, 1646, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 1408, 1409, 0, 0, 1647, 0, - 0, 0, 1651, 0, 1675, 0, 0, 1675, 1649, 0, - 0, 0, 0, 0, 0, 1650, 0, 0, 1410, 1411, - 0, 1408, 1409, 0, 0, 0, 3468, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 3105, 0, 0, 0, - 0, 0, 1651, 0, 0, 1410, 1411, 0, 1121, 0, - 0, 0, 1675, 0, 0, 0, 1675, 0, 0, 0, - 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 0, 0, - 0, 0, 0, 1440, 1440, 0, 1675, 1675, 0, 0, - 0, 3511, 0, 0, 0, 0, 0, 0, 0, 0, - 1675, 0, 0, 1675, 0, 0, 0, 0, 0, 1652, - 0, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, 1675, - 1675, 0, 0, 0, 0, 0, 1653, 0, 0, 0, - 0, 1654, 1638, 0, 0, 1639, 0, 0, 0, 1640, - 1641, 1642, 1643, 1644, 1645, 1646, 1675, 0, 0, 1652, - 0, 0, 0, 0, 1655, 1656, 0, 0, 0, 0, - 1647, 0, 0, 0, 0, 0, 1653, 0, 0, 1657, - 1649, 1654, 0, 0, 0, 0, 0, 1650, 3565, 3565, - 3565, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 1655, 1656, 0, 0, 0, 1440, - 0, 0, 0, 0, 1651, 3565, 0, 1658, 0, 1657, - 1659, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 1660, 0, 0, 1661, 0, 0, + 0, 1676, 3513, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 3565, 1658, 0, 0, - 1659, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 1660, 0, 0, 1661, 0, 0, - 0, 0, 1675, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 1675, 1675, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 1676, 1676, 1676, + 0, 0, 1957, 1957, 1957, 1957, 1957, 1957, 0, 0, + 0, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, 1957, + 1957, 0, 0, 0, 0, 1676, 1676, 1664, 0, 0, + 1665, 1666, 1667, 0, 1668, 1669, 1670, 1671, 1672, 1673, + 0, 0, 0, 0, 2526, 0, 0, 0, 0, 0, + 0, 1676, 0, 0, 0, 0, 0, 1676, 0, 3567, + 3567, 3567, 0, 1639, 0, 0, 1640, 0, 0, 0, + 1641, 1642, 1643, 1644, 1645, 1646, 1647, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 3567, 0, 0, 0, + 0, 1648, 1676, 0, 0, 0, 0, 0, 0, 0, + 0, 1650, 0, 0, 0, 0, 0, 0, 1651, 1676, + 0, 0, 0, 0, 0, 1676, 0, 0, 0, 0, + 0, 0, 0, 1676, 1676, 0, 0, 3567, 0, 0, + 0, 1957, 1957, 0, 0, 1652, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 1676, 1441, 1441, 1676, 0, + 1676, 0, 0, 0, 1676, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 1639, 0, + 0, 1640, 0, 0, 0, 1641, 1642, 1643, 1644, 1645, + 1646, 1647, 0, 0, 0, 0, 0, 0, 0, 1387, + 1388, 0, 0, 0, 0, 0, 1648, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 1650, 0, 0, 0, + 1676, 0, 0, 1651, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 1652, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 1653, 0, - 0, 0, 0, 1654, 0, 0, 1662, 0, 0, 0, + 1389, 1390, 1653, 0, 1391, 1392, 0, 0, 0, 0, + 1652, 0, 0, 0, 0, 0, 0, 0, 1639, 1654, + 0, 1640, 0, 0, 1655, 1641, 1642, 1643, 1644, 1645, + 1646, 1647, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 1648, 1656, 1657, 0, + 0, 0, 0, 0, 0, 0, 1650, 0, 0, 0, + 0, 0, 1658, 1651, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 1655, 1656, 0, 1675, + 1393, 1394, 0, 0, 0, 0, 0, 0, 0, 0, + 1652, 0, 1676, 0, 0, 0, 0, 0, 0, 0, + 1659, 0, 0, 1660, 0, 0, 0, 1653, 0, 0, + 0, 0, 0, 0, 1441, 0, 0, 1661, 0, 0, + 1662, 0, 0, 0, 1654, 0, 0, 0, 1639, 1655, + 0, 1640, 0, 0, 0, 1641, 1642, 1643, 1644, 1645, + 1646, 1647, 0, 0, 1395, 1396, 1397, 1398, 1399, 1400, + 1401, 1402, 1656, 1657, 1403, 1404, 1648, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 1650, 1658, 0, 0, + 1676, 0, 1676, 1651, 0, 0, 0, 0, 0, 0, + 0, 1676, 0, 0, 0, 0, 0, 1653, 0, 1387, + 1388, 0, 0, 0, 1676, 0, 0, 1676, 0, 1676, + 1652, 0, 0, 1676, 1654, 1659, 1957, 1957, 1660, 1655, + 1676, 1676, 0, 0, 0, 0, 0, 0, 1676, 1663, + 0, 0, 1661, 0, 0, 1662, 0, 1676, 1405, 1406, + 1389, 1390, 1656, 1657, 1391, 1392, 0, 0, 0, 0, + 0, 0, 1676, 0, 0, 0, 0, 1658, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 1657, 0, 0, 0, 0, 1662, 0, 0, 0, - 0, 0, 0, 0, 0, 1675, 1675, 1675, 0, 0, - 1955, 1955, 1955, 1955, 1955, 1955, 0, 0, 0, 1955, - 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1955, 1658, - 0, 0, 1659, 1675, 1675, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 1660, 0, 0, 1661, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 1675, - 0, 0, 0, 0, 1663, 1675, 0, 1664, 1665, 1666, - 0, 1667, 1668, 1669, 1670, 1671, 1672, 0, 0, 0, - 0, 2835, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 1407, + 1408, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 1441, 0, 0, 0, 0, 1659, 0, 0, 1660, 0, + 0, 0, 0, 0, 0, 0, 0, 1653, 0, 0, + 0, 0, 1661, 0, 0, 1662, 0, 0, 0, 0, + 1393, 1394, 0, 0, 1654, 0, 0, 0, 0, 1655, + 0, 0, 0, 0, 1663, 0, 0, 1664, 0, 0, + 1665, 1666, 1667, 0, 1668, 1669, 1670, 1671, 1672, 1673, + 0, 0, 1656, 1657, 2559, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 1658, 0, 0, + 0, 0, 0, 0, 0, 1409, 1410, 0, 0, 0, + 0, 0, 0, 0, 1395, 1396, 1397, 1398, 1399, 1400, + 1401, 1402, 0, 0, 1403, 1404, 0, 0, 0, 1411, + 1412, 0, 0, 0, 0, 1659, 0, 0, 1660, 0, + 0, 0, 0, 0, 1663, 0, 0, 0, 0, 2034, + 0, 0, 1661, 0, 0, 1662, 0, 0, 0, 0, + 0, 0, 1957, 1441, 0, 0, 0, 0, 0, 0, + 0, 0, 1664, 0, 0, 1665, 1666, 1667, 0, 1668, + 1669, 1670, 1671, 1672, 1673, 0, 0, 1676, 1676, 2772, + 0, 0, 0, 0, 0, 0, 0, 0, 1405, 1406, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 1675, 0, 0, 0, 1663, 0, 0, 1664, 1665, 1666, - 0, 1667, 1668, 1669, 1670, 1671, 1672, 1675, 0, 0, - 0, 0, 0, 1675, 0, 0, 0, 0, 0, 0, - 0, 1675, 1675, 0, 0, 0, 0, 0, 0, 1955, - 1955, 0, 0, 0, 0, 0, 0, 0, 1662, 0, - 0, 0, 0, 1675, 1440, 1440, 1675, 0, 1675, 0, - 0, 0, 1675, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 1638, 0, 0, 1639, - 0, 0, 0, 1640, 1641, 1642, 1643, 1644, 1645, 1646, + 0, 1676, 0, 0, 0, 0, 0, 0, 0, 0, + 1676, 0, 0, 0, 1676, 1676, 1676, 0, 0, 1676, + 0, 0, 1676, 1676, 0, 0, 0, 0, 0, 1407, + 1408, 1676, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 1664, 0, 1663, 1665, 1666, 1667, 0, 1668, + 1669, 1670, 1671, 1672, 1673, 0, 0, 0, 0, 2837, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 1647, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 1649, 0, 0, 0, 1675, 0, - 0, 1650, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 1676, 0, 0, 0, 0, 0, 1957, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 1651, 0, - 0, 0, 0, 0, 0, 0, 1663, 0, 0, 1664, - 1665, 1666, 0, 1667, 1668, 1669, 1670, 1671, 1672, 0, - 0, 1638, 0, 2849, 1639, 0, 0, 0, 1640, 1641, - 1642, 1643, 1644, 1645, 1646, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 1647, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 1649, - 1638, 0, 0, 1639, 0, 0, 1650, 1640, 1641, 1642, - 1643, 1644, 1645, 1646, 0, 0, 0, 0, 1638, 0, - 1675, 1639, 0, 0, 0, 1640, 1641, 0, 1647, 1644, - 1645, 1646, 0, 1651, 0, 1652, 0, 0, 1649, 0, - 0, 0, 1440, 0, 0, 1650, 1647, 0, 0, 0, - 0, 0, 1653, 0, 0, 0, 1649, 1654, 0, 0, - 0, 0, 0, 1650, 0, 0, 0, 0, 0, 0, - 0, 0, 1651, 0, 0, 0, 0, 0, 0, 0, - 1655, 1656, 0, 0, 0, 0, 0, 0, 0, 0, - 1651, 0, 0, 0, 0, 1657, 0, 0, 1675, 0, - 1675, 0, 0, 0, 0, 0, 0, 0, 0, 1675, + 0, 1676, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 1675, 0, 0, 1675, 0, 1675, 0, 0, - 1652, 1675, 0, 1658, 1955, 1955, 1659, 0, 1675, 1675, - 0, 0, 0, 0, 0, 0, 1675, 1653, 0, 0, - 1660, 0, 1654, 1661, 0, 1675, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 1652, - 1675, 0, 0, 0, 0, 1655, 1656, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 1653, 1652, 0, 0, - 1657, 1654, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 1653, 0, 0, 0, 1440, 1654, - 0, 0, 0, 0, 1655, 1656, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 1658, 1657, - 0, 1659, 1655, 1656, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 1660, 0, 1657, 1661, 0, - 0, 0, 1662, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 1658, 0, 0, - 1659, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 1660, 1658, 0, 1661, 1659, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 1660, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 1409, 1410, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 1411, + 1412, 1957, 1664, 0, 0, 1665, 1666, 1667, 0, 1668, + 1669, 1670, 1671, 1672, 1673, 0, 0, 0, 0, 2851, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 1676, 1676, 1676, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 1662, 0, 0, - 1955, 1440, 0, 0, 0, 0, 0, 0, 0, 0, - 1663, 0, 0, 1664, 1665, 1666, 0, 1667, 1668, 1669, - 1670, 1671, 1672, 0, 0, 1675, 1675, 2916, 0, 0, - 0, 0, 0, 0, 0, 0, 1662, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 1675, - 0, 0, 0, 0, 1662, 0, 0, 0, 1675, 0, - 0, 0, 1675, 1675, 1675, 0, 0, 1675, 0, 0, - 1675, 1675, 0, 0, 0, 0, 0, 0, 0, 1675, + 0, 0, 0, 0, 0, 0, 0, 1676, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 1676, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 1663, 0, 0, 1664, 1665, - 1666, 0, 1667, 1668, 1669, 1670, 1671, 1672, 0, 0, - 1675, 0, 3153, 0, 0, 0, 1955, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 1675, - 0, 0, 0, 0, 1663, 0, 0, 1664, 1665, 1666, - 0, 1667, 1668, 1669, 1670, 1671, 1672, 0, 0, 0, - 0, 3160, 1663, 0, 0, 1664, 1665, 1666, 0, 1667, - 1668, 1669, 1670, 1671, 1672, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 1955, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 1675, 1675, 1675, 0, 0, + 1676, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 1676, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 1675, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 1675, 0, 0, + 0, 0, 0, 0, 0, 1676, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 1676, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 117, 1056, 821, 1057, + 1058, 1059, 1060, 1061, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 1676, 0, 118, 119, 120, 121, 122, + 123, 124, 125, 0, 126, 127, 128, 0, 0, 0, + 0, 0, 1062, 0, 0, 129, 130, 131, 0, 132, + 133, 134, 135, 136, 137, 138, 139, 1063, 141, 1064, + 1065, 0, 144, 145, 146, 147, 148, 149, 1066, 790, + 150, 151, 152, 153, 1067, 1068, 156, 1676, 157, 158, + 159, 160, 791, 0, 792, 0, 1069, 164, 165, 166, + 167, 168, 169, 170, 171, 172, 0, 173, 174, 175, + 176, 177, 178, 0, 179, 180, 181, 182, 183, 184, + 185, 186, 187, 188, 189, 1070, 191, 192, 1071, 194, + 1072, 195, 0, 196, 197, 198, 199, 200, 201, 14, + 15, 202, 203, 204, 205, 0, 0, 206, 207, 1073, + 209, 210, 0, 211, 212, 213, 0, 214, 215, 216, + 0, 217, 218, 219, 220, 1074, 222, 223, 224, 225, + 226, 227, 793, 1075, 229, 0, 230, 231, 1076, 233, + 0, 234, 0, 235, 236, 23, 237, 238, 239, 240, + 241, 242, 0, 243, 0, 1077, 1078, 246, 247, 0, + 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, + 258, 259, 0, 260, 261, 262, 263, 264, 265, 266, + 0, 267, 268, 269, 270, 271, 272, 273, 274, 1079, + 1080, 0, 1081, 0, 278, 279, 280, 281, 282, 283, + 284, 285, 286, 287, 288, 0, 0, 289, 290, 291, + 292, 0, 293, 294, 295, 296, 297, 298, 299, 300, + 1082, 302, 303, 304, 305, 306, 307, 308, 309, 310, + 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, + 321, 1083, 323, 1084, 325, 326, 327, 328, 1085, 329, + 330, 331, 332, 1086, 795, 334, 1087, 336, 337, 338, + 0, 339, 340, 0, 0, 1088, 342, 343, 0, 0, + 344, 345, 346, 347, 348, 349, 797, 351, 352, 353, + 354, 355, 356, 357, 358, 359, 360, 361, 26, 27, + 28, 0, 362, 363, 798, 365, 366, 367, 368, 369, + 370, 371, 0, 372, 373, 374, 375, 376, 377, 0, + 378, 379, 380, 381, 382, 1089, 384, 385, 386, 387, + 0, 388, 389, 390, 391, 392, 393, 394, 395, 396, + 397, 398, 399, 400, 0, 401, 402, 403, 404, 405, + 406, 1090, 408, 409, 410, 411, 412, 413, 414, 415, + 416, 417, 418, 419, 420, 33, 0, 421, 422, 423, + 424, 425, 426, 427, 428, 429, 35, 430, 431, 432, + 1091, 434, 0, 435, 436, 437, 438, 439, 440, 441, + 442, 443, 444, 445, 446, 447, 448, 800, 37, 0, + 450, 451, 38, 452, 453, 454, 455, 456, 457, 458, + 0, 459, 1092, 1093, 0, 0, 462, 463, 801, 465, + 802, 1094, 467, 468, 803, 470, 471, 472, 473, 474, + 0, 0, 475, 476, 477, 40, 478, 479, 480, 481, + 0, 482, 483, 484, 485, 486, 804, 1095, 489, 0, + 490, 491, 492, 493, 494, 495, 496, 497, 498, 0, + 0, 499, 0, 44, 500, 501, 502, 503, 504, 505, + 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, + 516, 517, 518, 519, 520, 1096, 0, 45, 0, 0, + 0, 0, 1097, 1098, 1099, 0, 0, 0, 0, 1100, + 0, 1101, 3292, 0, 0, 0, 0, 1102, 1103, 1104, + 1105, 117, 1056, 821, 1057, 1058, 1059, 1060, 1061, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 118, 119, 120, 121, 122, 123, 124, 125, 0, 126, + 127, 128, 0, 0, 0, 0, 0, 1062, 0, 0, + 129, 130, 131, 0, 132, 133, 134, 135, 136, 137, + 138, 139, 1063, 141, 1064, 1065, 0, 144, 145, 146, + 147, 148, 149, 1066, 790, 150, 151, 152, 153, 1067, + 1068, 156, 0, 157, 158, 159, 160, 791, 0, 792, + 0, 1069, 164, 165, 166, 167, 168, 169, 170, 171, + 172, 0, 173, 174, 175, 176, 177, 178, 0, 179, + 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, + 1070, 191, 192, 1071, 194, 1072, 195, 0, 196, 197, + 198, 199, 200, 201, 14, 15, 202, 203, 204, 205, + 0, 0, 206, 207, 1073, 209, 210, 0, 211, 212, + 213, 0, 214, 215, 216, 0, 217, 218, 219, 220, + 1074, 222, 223, 224, 225, 226, 227, 793, 1075, 229, + 0, 230, 231, 1076, 233, 0, 234, 0, 235, 236, + 23, 237, 238, 239, 240, 241, 242, 0, 243, 0, + 1077, 1078, 246, 247, 0, 248, 249, 250, 251, 252, + 253, 254, 255, 256, 257, 258, 259, 0, 260, 261, + 262, 263, 264, 265, 266, 0, 267, 268, 269, 270, + 271, 272, 273, 274, 1079, 1080, 0, 1081, 0, 278, + 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, + 0, 0, 289, 290, 291, 292, 0, 293, 294, 295, + 296, 297, 298, 299, 300, 1082, 302, 303, 304, 305, + 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, + 316, 317, 318, 319, 320, 321, 1083, 323, 1084, 325, + 326, 327, 328, 1085, 329, 330, 331, 332, 1086, 795, + 334, 1087, 336, 337, 338, 0, 339, 340, 0, 0, + 1088, 342, 343, 0, 0, 344, 345, 346, 347, 348, + 349, 797, 351, 352, 353, 354, 355, 356, 357, 358, + 359, 360, 361, 26, 27, 28, 0, 362, 363, 798, + 365, 366, 367, 368, 369, 370, 371, 0, 372, 373, + 374, 375, 376, 377, 0, 378, 379, 380, 381, 382, + 1089, 384, 385, 386, 387, 0, 388, 389, 390, 391, + 392, 393, 394, 395, 396, 397, 398, 399, 400, 0, + 401, 402, 403, 404, 405, 406, 1090, 408, 409, 410, + 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, + 33, 0, 421, 422, 423, 424, 425, 426, 427, 428, + 429, 35, 430, 431, 432, 1091, 434, 0, 435, 436, + 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, + 447, 448, 800, 37, 0, 450, 451, 38, 452, 453, + 454, 455, 456, 457, 458, 0, 459, 1092, 1093, 0, + 0, 462, 463, 801, 465, 802, 1094, 467, 468, 803, + 470, 471, 472, 473, 474, 0, 0, 475, 476, 477, + 40, 478, 479, 480, 481, 0, 482, 483, 484, 485, + 486, 804, 1095, 489, 0, 490, 491, 492, 493, 494, + 495, 496, 497, 498, 0, 0, 499, 0, 44, 500, + 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, + 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, + 1096, 0, 45, 0, 0, 0, 0, 1097, 1098, 1099, + 0, 0, 0, 0, 1100, 0, 1101, 0, 0, 0, + 0, 0, 1102, 1103, 1104, 1105, 117, 1056, 821, 1057, + 1058, 1059, 1060, 1061, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 118, 119, 120, 121, 122, + 123, 124, 125, 0, 126, 127, 128, 0, 0, 0, + 0, 0, 1062, 0, 0, 129, 130, 131, 0, 132, + 133, 134, 135, 136, 137, 138, 139, 1063, 141, 1064, + 1065, 0, 144, 145, 146, 147, 148, 149, 1066, 790, + 150, 151, 152, 153, 1067, 1068, 156, 0, 157, 158, + 159, 160, 791, 0, 792, 0, 1069, 164, 165, 166, + 167, 168, 169, 170, 171, 172, 0, 173, 174, 175, + 176, 177, 178, 0, 179, 180, 181, 182, 183, 184, + 185, 186, 187, 188, 189, 1070, 191, 192, 1071, 194, + 1072, 195, 0, 196, 197, 198, 199, 200, 201, 0, + 0, 202, 203, 204, 205, 0, 0, 206, 207, 1073, + 209, 210, 0, 211, 212, 213, 0, 214, 215, 216, + 0, 217, 218, 219, 220, 1074, 222, 223, 224, 225, + 226, 227, 793, 1075, 229, 0, 230, 231, 1076, 233, + 0, 234, 0, 235, 236, 23, 237, 238, 239, 240, + 241, 242, 0, 243, 0, 1077, 1078, 246, 247, 0, + 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, + 258, 259, 0, 260, 261, 262, 263, 264, 265, 266, + 0, 267, 268, 269, 270, 271, 272, 273, 274, 1079, + 1080, 0, 1081, 0, 278, 279, 280, 281, 282, 283, + 284, 285, 286, 287, 288, 0, 0, 289, 290, 291, + 292, 0, 293, 294, 295, 296, 297, 298, 299, 300, + 1082, 302, 303, 304, 305, 306, 307, 308, 309, 310, + 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, + 321, 1083, 323, 1084, 325, 326, 327, 328, 1085, 329, + 330, 331, 332, 1086, 795, 334, 1087, 336, 337, 338, + 0, 339, 340, 0, 0, 1088, 342, 343, 0, 0, + 344, 345, 346, 347, 348, 349, 797, 351, 352, 353, + 354, 355, 356, 357, 358, 359, 360, 361, 26, 27, + 28, 0, 362, 363, 798, 365, 366, 367, 368, 369, + 370, 371, 0, 372, 373, 374, 375, 376, 377, 0, + 378, 379, 380, 381, 382, 1089, 384, 385, 386, 387, + 0, 388, 389, 390, 391, 392, 393, 394, 395, 396, + 397, 398, 399, 400, 0, 401, 402, 403, 404, 405, + 406, 1090, 408, 409, 410, 411, 412, 413, 414, 415, + 416, 417, 418, 419, 420, 33, 0, 421, 422, 423, + 424, 425, 426, 427, 428, 429, 0, 430, 431, 432, + 1091, 434, 0, 435, 436, 437, 438, 439, 440, 441, + 442, 443, 444, 445, 446, 447, 448, 800, 0, 0, + 450, 451, 38, 452, 453, 454, 455, 456, 457, 458, + 0, 459, 1092, 1093, 0, 0, 462, 463, 801, 465, + 802, 1094, 467, 468, 803, 470, 471, 472, 473, 474, + 0, 0, 475, 476, 477, 40, 478, 479, 480, 481, + 0, 482, 483, 484, 485, 486, 804, 1095, 489, 0, + 490, 491, 492, 493, 494, 495, 496, 497, 498, 0, + 0, 499, 0, 44, 500, 501, 502, 503, 504, 505, + 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, + 516, 517, 518, 519, 520, 1096, 0, 45, 0, 0, + 0, 0, 1097, 1098, 1099, 0, 0, 0, 0, 1100, + 0, 1101, 0, 0, 0, 0, 0, 1102, 1103, 1104, + 1105, 1264, 1056, 821, 1057, 1058, 1059, 1060, 1061, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 1675, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 1675, 0, + 118, 119, 120, 121, 122, 123, 124, 125, 1265, 126, + 127, 128, 0, 0, 0, 1266, 0, 1062, 0, 0, + 1267, 130, 131, 0, 132, 133, 134, 1268, 136, 137, + 138, 139, 1063, 1269, 1064, 1065, 0, 144, 145, 146, + 147, 148, 149, 1066, 790, 150, 151, 152, 153, 1067, + 1068, 156, 0, 157, 158, 159, 160, 791, 0, 1270, + 0, 1271, 164, 165, 166, 167, 168, 1272, 170, 171, + 172, 0, 173, 174, 175, 176, 177, 178, 0, 1273, + 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, + 1070, 191, 192, 1071, 194, 1072, 195, 0, 196, 197, + 198, 199, 200, 201, 0, 0, 202, 203, 204, 205, + 1274, 0, 206, 207, 1073, 209, 210, 0, 211, 212, + 213, 0, 214, 215, 216, 0, 217, 218, 219, 220, + 1074, 222, 223, 224, 225, 226, 227, 793, 1075, 229, + 0, 230, 231, 1076, 233, 0, 234, 0, 235, 1275, + 0, 1276, 238, 239, 1277, 1278, 242, 0, 243, 0, + 1077, 1078, 246, 247, 0, 248, 249, 250, 251, 252, + 253, 254, 1279, 256, 257, 258, 259, 0, 260, 261, + 262, 263, 264, 265, 266, 0, 267, 1280, 269, 270, + 271, 272, 273, 274, 1079, 1080, 0, 1081, 0, 278, + 1281, 1282, 281, 1283, 283, 284, 285, 286, 287, 288, + 0, 0, 289, 1284, 291, 1285, 0, 293, 294, 295, + 296, 297, 298, 299, 300, 1286, 302, 303, 304, 305, + 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, + 316, 317, 318, 319, 320, 321, 1083, 1287, 1084, 325, + 326, 327, 328, 1085, 329, 330, 1288, 332, 1086, 795, + 334, 1087, 336, 337, 338, 0, 339, 340, 0, 0, + 1088, 342, 343, 0, 881, 344, 345, 346, 1289, 348, + 1290, 797, 351, 352, 353, 354, 355, 356, 357, 358, + 359, 360, 361, 0, 0, 0, 0, 362, 363, 798, + 1291, 366, 367, 368, 369, 370, 371, 0, 372, 373, + 374, 375, 376, 377, 0, 378, 379, 380, 381, 382, + 1089, 384, 385, 386, 387, 0, 388, 389, 390, 391, + 392, 393, 394, 395, 396, 397, 398, 399, 400, 0, + 401, 402, 1292, 404, 405, 406, 1090, 408, 409, 410, + 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, + 0, 1293, 421, 422, 423, 424, 425, 426, 427, 428, + 429, 0, 1294, 431, 432, 1091, 434, 0, 435, 436, + 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, + 1295, 448, 800, 0, 0, 450, 451, 0, 452, 1296, + 454, 455, 456, 457, 458, 0, 459, 1092, 1093, 0, + 0, 462, 463, 801, 465, 802, 1094, 467, 468, 1297, + 470, 471, 472, 473, 474, 0, 0, 475, 476, 477, + 0, 478, 479, 480, 481, 0, 482, 483, 484, 485, + 486, 487, 1095, 489, 1298, 490, 1299, 492, 493, 494, + 495, 496, 497, 498, 0, 0, 499, 0, 0, 500, + 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, + 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, + 1096, 0, 0, 0, 0, 0, 0, 1097, 1098, 1099, + 0, 0, 0, 0, 1100, 0, 1101, 1300, 0, 0, + 0, 0, 1102, 1103, 1104, 1105, 117, 1056, 821, 1057, + 1058, 0, 1060, 1061, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 118, 119, 120, 121, 122, + 123, 124, 125, 0, 126, 127, 128, 0, 0, 0, + 0, 0, 1062, 0, 0, 129, 130, 131, 0, 132, + 133, 134, 135, 136, 137, 138, 139, 1063, 141, 1064, + 1065, 0, 144, 145, 146, 147, 148, 149, 1066, 790, + 150, 151, 152, 153, 1067, 1068, 156, 0, 157, 158, + 159, 160, 791, 0, 792, 0, 163, 164, 165, 166, + 167, 168, 169, 170, 171, 172, 0, 173, 174, 175, + 176, 177, 178, 0, 179, 180, 181, 182, 183, 184, + 185, 186, 187, 188, 189, 1070, 191, 192, 1071, 194, + 0, 195, 0, 196, 197, 198, 199, 200, 201, 14, + 15, 202, 203, 204, 205, 0, 0, 206, 207, 1073, + 209, 210, 0, 211, 212, 213, 0, 214, 215, 216, + 0, 217, 218, 219, 220, 1074, 222, 223, 224, 225, + 226, 227, 793, 1075, 229, 0, 230, 231, 1076, 233, + 0, 234, 0, 235, 236, 23, 237, 238, 239, 240, + 241, 242, 0, 243, 0, 1077, 1078, 246, 247, 0, + 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, + 258, 259, 0, 260, 261, 262, 263, 264, 265, 266, + 0, 267, 268, 269, 270, 271, 272, 273, 274, 1079, + 1080, 0, 1081, 0, 278, 279, 280, 281, 282, 283, + 284, 285, 286, 287, 288, 0, 0, 289, 290, 291, + 292, 0, 293, 294, 295, 296, 297, 298, 299, 300, + 1082, 302, 303, 304, 305, 306, 307, 308, 309, 310, + 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, + 321, 1083, 323, 1084, 325, 326, 327, 328, 0, 329, + 330, 331, 332, 1086, 795, 334, 1087, 336, 337, 338, + 0, 339, 340, 0, 0, 341, 342, 343, 0, 0, + 344, 345, 346, 347, 348, 349, 797, 351, 352, 353, + 354, 355, 356, 357, 358, 359, 360, 361, 26, 27, + 28, 0, 362, 363, 798, 365, 366, 367, 368, 369, + 370, 371, 0, 372, 373, 374, 375, 376, 377, 0, + 378, 379, 380, 381, 382, 1089, 384, 385, 386, 387, + 0, 388, 389, 390, 391, 392, 393, 394, 395, 396, + 397, 398, 399, 400, 0, 401, 402, 403, 404, 405, + 406, 1090, 408, 409, 410, 411, 412, 413, 414, 415, + 416, 417, 418, 419, 420, 33, 0, 421, 422, 423, + 424, 425, 426, 427, 428, 429, 35, 430, 431, 432, + 1091, 434, 0, 435, 436, 437, 438, 439, 440, 441, + 442, 443, 444, 445, 446, 447, 448, 800, 37, 0, + 450, 451, 38, 452, 453, 454, 455, 456, 457, 458, + 0, 459, 1092, 1093, 0, 0, 462, 463, 801, 465, + 802, 1094, 467, 468, 803, 470, 471, 472, 473, 474, + 0, 0, 475, 476, 477, 40, 478, 479, 480, 481, + 0, 482, 483, 484, 485, 486, 804, 1095, 489, 0, + 490, 491, 492, 493, 494, 495, 496, 497, 498, 0, + 0, 499, 0, 44, 500, 501, 502, 503, 504, 505, + 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, + 516, 517, 518, 519, 520, 0, 0, 45, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 1100, + 0, 1101, 0, 0, 0, 0, 0, 1102, 1103, 1104, + 1105, 117, 1056, 821, 1057, 1058, 1059, 1060, 1061, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 118, 119, 120, 121, 122, 123, 124, 125, 0, 126, + 127, 128, 0, 0, 0, 0, 0, 1062, 0, 0, + 129, 130, 131, 0, 132, 133, 134, 135, 136, 137, + 138, 139, 1063, 141, 1064, 1065, 1448, 144, 145, 146, + 147, 148, 149, 1066, 790, 150, 151, 152, 153, 1067, + 1068, 156, 0, 157, 158, 159, 160, 791, 0, 792, + 0, 1069, 164, 165, 166, 167, 168, 169, 170, 171, + 172, 0, 173, 174, 175, 176, 177, 178, 0, 179, + 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, + 1070, 191, 192, 1071, 194, 1072, 195, 0, 196, 197, + 198, 199, 200, 201, 0, 0, 202, 203, 204, 205, + 0, 0, 206, 207, 1073, 209, 210, 0, 211, 212, + 213, 0, 214, 215, 216, 0, 217, 218, 219, 220, + 1074, 222, 223, 224, 225, 226, 227, 793, 1075, 229, + 0, 230, 231, 1076, 233, 0, 234, 0, 235, 236, + 1449, 237, 238, 239, 240, 241, 242, 0, 243, 0, + 1077, 1078, 246, 247, 0, 248, 249, 250, 251, 252, + 253, 254, 255, 256, 257, 258, 259, 0, 260, 261, + 262, 263, 264, 265, 266, 0, 267, 268, 269, 270, + 271, 272, 273, 274, 1079, 1080, 0, 1081, 0, 278, + 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, + 0, 1450, 289, 290, 291, 292, 0, 293, 294, 295, + 296, 297, 298, 299, 300, 1082, 302, 303, 304, 305, + 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, + 316, 317, 318, 319, 320, 321, 1083, 323, 1084, 325, + 326, 327, 328, 1085, 329, 330, 331, 332, 1086, 795, + 334, 1087, 336, 337, 338, 0, 339, 340, 0, 0, + 1088, 342, 343, 0, 0, 344, 345, 346, 347, 348, + 349, 797, 351, 352, 353, 354, 355, 356, 357, 358, + 359, 360, 361, 0, 0, 0, 0, 362, 363, 798, + 365, 366, 367, 368, 369, 370, 371, 0, 372, 373, + 374, 375, 376, 377, 0, 378, 379, 380, 381, 382, + 1089, 384, 385, 386, 387, 0, 388, 389, 390, 391, + 392, 393, 394, 395, 396, 397, 398, 399, 400, 0, + 401, 402, 403, 404, 405, 406, 1090, 408, 409, 410, + 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, + 0, 0, 421, 422, 423, 424, 425, 426, 427, 428, + 429, 0, 430, 431, 432, 1091, 434, 0, 435, 436, + 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, + 447, 448, 800, 0, 0, 450, 451, 0, 452, 453, + 454, 455, 456, 457, 458, 0, 459, 1092, 1093, 0, + 1451, 462, 463, 801, 465, 802, 1094, 467, 468, 803, + 470, 471, 472, 473, 474, 0, 0, 475, 476, 477, + 0, 478, 479, 480, 481, 0, 482, 483, 484, 485, + 486, 487, 1095, 489, 0, 490, 491, 492, 493, 494, + 495, 496, 497, 498, 0, 0, 499, 0, 0, 500, + 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, + 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, + 1096, 0, 0, 0, 0, 0, 0, 1097, 1098, 1099, + 0, 0, 0, 0, 1100, 0, 1101, 0, 0, 0, + 0, 0, 1102, 1103, 1104, 1105, 1264, 1056, 821, 1057, + 1058, 1059, 1060, 1061, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 118, 119, 120, 121, 122, + 123, 124, 125, 0, 126, 127, 128, 0, 0, 0, + 1266, 0, 1062, 0, 0, 1267, 130, 131, 0, 132, + 133, 134, 1268, 136, 137, 138, 139, 1063, 1269, 1064, + 1065, 0, 144, 145, 146, 147, 148, 149, 1066, 790, + 150, 151, 152, 153, 1067, 1068, 156, 0, 157, 158, + 159, 160, 791, 0, 1270, 0, 1271, 164, 165, 166, + 167, 168, 1272, 170, 171, 172, 0, 173, 174, 175, + 176, 177, 178, 0, 1273, 180, 181, 182, 183, 184, + 185, 186, 187, 188, 189, 1070, 191, 192, 1071, 194, + 1072, 195, 0, 196, 197, 198, 199, 200, 201, 0, + 0, 202, 203, 204, 205, 0, 0, 206, 207, 1073, + 209, 210, 0, 211, 212, 213, 0, 214, 215, 216, + 0, 217, 218, 219, 220, 1074, 222, 223, 224, 225, + 226, 227, 793, 1075, 229, 0, 230, 231, 1076, 233, + 0, 234, 0, 235, 1275, 0, 1276, 238, 239, 1277, + 1278, 242, 0, 243, 0, 1077, 1078, 246, 247, 0, + 248, 249, 250, 251, 252, 253, 254, 1279, 256, 257, + 258, 259, 0, 260, 261, 262, 263, 264, 265, 266, + 0, 267, 1280, 269, 270, 271, 272, 273, 274, 1079, + 1080, 0, 1081, 0, 278, 1281, 1282, 281, 1283, 283, + 284, 285, 286, 287, 288, 0, 0, 289, 1284, 291, + 1285, 0, 293, 294, 295, 296, 297, 298, 299, 300, + 1286, 302, 303, 304, 305, 306, 307, 308, 309, 310, + 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, + 321, 1083, 1287, 1084, 325, 326, 327, 328, 1085, 329, + 330, 1288, 332, 1086, 795, 334, 1087, 336, 337, 338, + 0, 339, 340, 0, 0, 1088, 342, 343, 0, 0, + 344, 345, 346, 1289, 348, 1290, 797, 351, 352, 353, + 354, 355, 356, 357, 358, 359, 360, 361, 0, 0, + 0, 0, 362, 363, 798, 1291, 366, 367, 368, 369, + 370, 371, 0, 372, 373, 374, 375, 376, 377, 0, + 378, 379, 380, 381, 382, 1089, 384, 385, 386, 387, + 0, 388, 389, 390, 391, 392, 393, 394, 395, 396, + 397, 398, 399, 400, 0, 401, 402, 1292, 404, 405, + 406, 1090, 408, 409, 410, 411, 412, 413, 414, 415, + 416, 417, 418, 419, 420, 0, 1293, 421, 422, 423, + 424, 425, 426, 427, 428, 429, 0, 1294, 431, 432, + 1091, 434, 0, 435, 436, 437, 438, 439, 440, 441, + 442, 443, 444, 445, 446, 1295, 448, 800, 0, 0, + 450, 451, 0, 452, 1296, 454, 455, 456, 457, 458, + 0, 459, 1092, 1093, 0, 0, 462, 463, 801, 465, + 802, 1094, 467, 468, 1297, 470, 471, 472, 473, 474, + 0, 0, 475, 476, 477, 0, 478, 479, 480, 481, + 0, 482, 483, 484, 485, 486, 487, 1095, 489, 2329, + 490, 1299, 492, 493, 494, 495, 496, 497, 498, 0, + 0, 499, 0, 0, 500, 501, 502, 503, 504, 505, + 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, + 516, 517, 518, 519, 520, 1096, 0, 0, 0, 0, + 0, 0, 1097, 1098, 1099, 0, 0, 0, 0, 1100, + 0, 1101, 0, 0, 0, 0, 0, 1102, 1103, 1104, + 1105, 1264, 1056, 821, 1057, 1058, 1059, 1060, 1061, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 1675, 0, 0, 0, 0, 0, 0, + 118, 119, 120, 121, 122, 123, 124, 125, 0, 126, + 127, 128, 0, 0, 0, 1266, 0, 1062, 0, 0, + 1267, 130, 131, 0, 132, 133, 134, 1268, 136, 137, + 138, 139, 1063, 1269, 1064, 1065, 0, 144, 145, 146, + 147, 148, 149, 1066, 790, 150, 151, 152, 153, 1067, + 1068, 156, 0, 157, 158, 159, 160, 791, 0, 1270, + 0, 1271, 164, 165, 166, 167, 168, 1272, 170, 171, + 172, 0, 173, 174, 175, 176, 177, 178, 0, 1273, + 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, + 1070, 191, 192, 1071, 194, 1072, 195, 0, 196, 197, + 198, 199, 200, 201, 0, 0, 202, 203, 204, 205, + 0, 0, 206, 207, 1073, 209, 210, 0, 211, 212, + 213, 0, 214, 215, 216, 0, 217, 218, 219, 220, + 1074, 222, 223, 224, 225, 226, 227, 793, 1075, 229, + 0, 230, 231, 1076, 233, 0, 234, 0, 235, 1275, + 0, 1276, 238, 239, 1277, 1278, 242, 0, 243, 0, + 1077, 1078, 246, 247, 0, 248, 249, 250, 251, 252, + 253, 254, 1279, 256, 257, 258, 259, 0, 260, 261, + 262, 263, 264, 265, 266, 0, 267, 1280, 269, 270, + 271, 272, 273, 274, 1079, 1080, 0, 1081, 0, 278, + 1281, 1282, 281, 1283, 283, 284, 285, 286, 287, 288, + 0, 0, 289, 1284, 291, 1285, 0, 293, 294, 295, + 296, 297, 298, 299, 300, 1286, 302, 303, 304, 305, + 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, + 316, 317, 318, 319, 320, 321, 1083, 1287, 1084, 325, + 326, 327, 328, 1085, 329, 330, 1288, 332, 1086, 795, + 334, 1087, 336, 337, 338, 0, 339, 340, 0, 0, + 1088, 342, 343, 0, 0, 344, 345, 346, 1289, 348, + 1290, 797, 351, 352, 353, 354, 355, 356, 357, 358, + 359, 360, 361, 0, 0, 0, 0, 362, 363, 798, + 1291, 366, 367, 368, 369, 370, 371, 0, 372, 373, + 374, 375, 376, 377, 0, 378, 379, 380, 381, 382, + 1089, 384, 385, 386, 387, 0, 388, 389, 390, 391, + 392, 393, 394, 395, 396, 397, 398, 399, 400, 0, + 401, 402, 1292, 404, 405, 406, 1090, 408, 409, 410, + 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, + 0, 1293, 421, 422, 423, 424, 425, 426, 427, 428, + 429, 0, 1294, 431, 432, 1091, 434, 0, 435, 436, + 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, + 1295, 448, 800, 0, 0, 450, 451, 0, 452, 1296, + 454, 455, 456, 457, 458, 0, 459, 1092, 1093, 0, + 0, 462, 463, 801, 465, 802, 1094, 467, 468, 1297, + 470, 471, 472, 473, 474, 0, 0, 475, 476, 477, + 0, 478, 479, 480, 481, 0, 482, 483, 484, 485, + 486, 487, 1095, 489, 0, 490, 1299, 492, 493, 494, + 495, 496, 497, 498, 0, 0, 499, 0, 0, 500, + 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, + 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, + 1096, 0, 0, 0, 0, 0, 0, 1097, 1098, 1099, + 0, 0, 0, 0, 1100, 0, 1101, 2386, 0, 0, + 0, 0, 1102, 1103, 1104, 1105, 117, 1056, 821, 1057, + 1058, 1059, 1060, 1061, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 118, 119, 120, 121, 122, + 123, 124, 125, -1139, 126, 127, 128, 0, 0, 0, + 0, -1139, 1062, 0, 0, 129, 130, 131, 0, 132, + 133, 134, 135, 136, 137, 138, 139, 1063, 141, 1064, + 1065, 0, 144, 145, 146, 147, 148, 149, 1066, 790, + 150, 151, 152, 153, 1067, 1068, 156, 0, 157, 158, + 159, 160, 791, 0, 792, 0, 1069, 164, 165, 166, + 167, 168, 169, 170, 171, 172, 0, 173, 174, 175, + 176, 177, 178, 0, 179, 180, 181, 182, 183, 184, + 185, 186, 187, 188, 189, 1070, 191, 192, 1071, 194, + 1072, 195, 0, 196, 197, 198, 199, 200, 201, 0, + 0, 202, 203, 204, 205, 0, 0, 206, 207, 1073, + 209, 210, 0, 211, 212, 213, 0, 214, 215, 216, + 0, 217, 218, 219, 220, 1074, 222, 223, 224, 225, + 226, 227, 793, 1075, 229, 0, 230, 231, 1076, 233, + 0, 234, 0, 235, 236, 0, 237, 238, 239, 240, + 241, 242, 0, 243, 0, 1077, 1078, 246, 247, 0, + 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, + 258, 259, 0, 260, 261, 262, 263, 264, 265, 266, + 0, 267, 268, 269, 270, 271, 272, 273, 274, 1079, + 1080, 0, 1081, 0, 278, 279, 280, 281, 282, 283, + 284, 285, 286, 287, 288, 0, 0, 289, 290, 291, + 292, 0, 293, 294, 295, 296, 297, 298, 299, 300, + 1082, 302, 303, 304, 305, 306, 307, 308, 309, 310, + 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, + 321, 1083, 323, 1084, 325, 326, 327, 328, 1085, 329, + 330, 331, 332, 1086, 795, 334, 1087, 336, 337, 338, + 0, 339, 340, 0, 0, 1088, 342, 343, 0, 0, + 344, 345, 346, 347, 348, 349, 797, 351, 352, 353, + 354, 355, 356, 357, 358, 359, 360, 361, 0, 0, + 0, 0, 362, 363, 798, 365, 366, 367, 368, 369, + 370, 371, 0, 372, 373, 374, 375, 376, 377, 0, + 378, 379, 380, 381, 382, 1089, 384, 385, 386, 387, + 0, 388, 389, 390, 391, 392, 393, 394, 395, 396, + 397, 398, 399, 400, 0, 401, 402, 403, 404, 405, + 406, 1090, 408, 409, 410, 411, 412, 413, 414, 415, + 416, 417, 418, 419, 420, 0, 0, 421, 422, 423, + 424, 425, 426, 427, 428, 429, 0, 430, 431, 432, + 1091, 434, -1139, 435, 436, 437, 438, 439, 440, 441, + 442, 443, 444, 445, 446, 447, 448, 800, 0, 0, + 450, 451, 0, 452, 453, 454, 455, 456, 457, 458, + 0, 459, 1092, 1093, 0, 0, 462, 463, 801, 465, + 802, 1094, 467, 468, 803, 470, 471, 472, 473, 474, + 0, 0, 475, 476, 477, 0, 478, 479, 480, 481, + 0, 482, 483, 484, 485, 486, 487, 1095, 489, 0, + 490, 491, 492, 493, 494, 495, 496, 497, 498, 0, + 0, 499, 0, 0, 500, 501, 502, 503, 504, 505, + 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, + 516, 517, 518, 519, 520, 1096, 0, 0, 0, 0, + 0, 0, 1097, 1098, 1099, 0, 0, 0, 0, 1100, + 0, 1101, 0, 0, 0, 0, 0, 1102, 1103, 1104, + 1105, 1264, 1056, 821, 1057, 1058, 1059, 1060, 1061, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 1675, 0, + 118, 119, 120, 121, 122, 123, 124, 125, 0, 126, + 127, 128, 0, 0, 0, 1266, 0, 1062, 0, 0, + 1267, 130, 131, 0, 132, 133, 134, 1268, 136, 137, + 138, 139, 1063, 1269, 1064, 1065, 0, 144, 145, 146, + 147, 148, 149, 1066, 790, 150, 151, 152, 153, 1067, + 1068, 156, 0, 157, 158, 159, 160, 791, 0, 1270, + 0, 1271, 164, 165, 166, 167, 168, 1272, 170, 171, + 172, 0, 173, 174, 175, 176, 177, 178, 0, 1273, + 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, + 1070, 191, 192, 1071, 194, 1072, 195, 0, 196, 197, + 198, 199, 200, 201, 0, 0, 202, 203, 204, 205, + 0, 0, 206, 207, 1073, 209, 210, 0, 211, 212, + 213, 0, 214, 215, 216, 0, 217, 218, 219, 220, + 1074, 222, 223, 224, 225, 226, 227, 793, 1075, 229, + 0, 230, 231, 1076, 233, 0, 234, 0, 235, 1275, + 0, 1276, 238, 239, 1277, 1278, 242, 0, 243, 0, + 1077, 1078, 246, 247, 0, 248, 249, 250, 251, 252, + 253, 254, 1279, 256, 257, 258, 259, 0, 260, 261, + 262, 263, 264, 265, 266, 0, 267, 1280, 269, 270, + 271, 272, 273, 274, 1079, 1080, 0, 1081, 0, 278, + 1281, 1282, 281, 1283, 283, 284, 285, 286, 287, 288, + 0, 0, 289, 1284, 291, 1285, 0, 293, 294, 295, + 296, 297, 298, 299, 300, 1286, 302, 303, 304, 305, + 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, + 316, 317, 318, 319, 320, 321, 1083, 1287, 1084, 325, + 326, 327, 328, 1085, 329, 330, 1288, 332, 1086, 795, + 334, 1087, 336, 337, 338, 0, 339, 340, 0, 0, + 1088, 342, 343, 0, 0, 344, 345, 346, 1289, 348, + 1290, 797, 351, 352, 353, 354, 355, 356, 357, 358, + 359, 360, 361, 0, 0, 0, 0, 362, 363, 798, + 1291, 366, 367, 368, 369, 370, 371, 0, 372, 373, + 374, 375, 376, 377, 0, 378, 379, 380, 381, 382, + 1089, 384, 385, 386, 387, 0, 388, 389, 390, 391, + 392, 393, 394, 395, 396, 397, 398, 399, 400, 0, + 401, 402, 1292, 404, 405, 406, 1090, 408, 409, 410, + 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, + 0, 1293, 421, 422, 423, 424, 425, 426, 427, 428, + 429, 0, 1294, 431, 432, 1091, 434, 0, 435, 436, + 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, + 1295, 448, 800, 0, 0, 450, 451, 0, 452, 1296, + 454, 455, 456, 457, 458, 0, 459, 1092, 1093, 0, + 0, 462, 463, 801, 465, 802, 1094, 467, 468, 1297, + 470, 471, 472, 473, 474, 0, 0, 475, 476, 477, + 0, 478, 479, 480, 481, 0, 482, 483, 484, 485, + 486, 487, 1095, 489, 0, 490, 1299, 492, 493, 494, + 495, 496, 497, 498, 0, 0, 499, 0, 0, 500, + 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, + 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, + 1096, 0, 0, 0, 0, 0, 0, 1097, 1098, 1099, + 0, 0, 0, 0, 1100, 0, 1101, 3158, 0, 0, + 0, 0, 1102, 1103, 1104, 1105, 1264, 1056, 821, 1057, + 1058, 1059, 1060, 1061, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 118, 119, 120, 121, 122, + 123, 124, 125, 0, 126, 127, 128, 0, 0, 0, + 1266, 0, 1062, 0, 0, 1267, 130, 131, 0, 132, + 133, 134, 1268, 136, 137, 138, 139, 1063, 1269, 1064, + 1065, 0, 144, 145, 146, 147, 148, 149, 1066, 790, + 150, 151, 152, 153, 1067, 1068, 156, 0, 157, 158, + 159, 160, 791, 0, 1270, 0, 1271, 164, 165, 166, + 167, 168, 1272, 170, 171, 172, 0, 173, 174, 175, + 176, 177, 178, 0, 1273, 180, 181, 182, 183, 184, + 185, 186, 187, 188, 189, 1070, 191, 192, 1071, 194, + 1072, 195, 0, 196, 197, 198, 199, 200, 201, 0, + 0, 202, 203, 204, 205, 0, 0, 206, 207, 1073, + 209, 210, 0, 211, 212, 213, 0, 214, 215, 216, + 0, 217, 218, 219, 220, 1074, 222, 223, 224, 225, + 226, 227, 793, 1075, 229, 0, 230, 231, 1076, 233, + 0, 234, 0, 235, 1275, 0, 1276, 238, 239, 1277, + 1278, 242, 0, 243, 0, 1077, 1078, 246, 247, 0, + 248, 249, 250, 251, 252, 253, 254, 1279, 256, 257, + 258, 259, 0, 260, 261, 262, 263, 264, 265, 266, + 0, 267, 1280, 269, 270, 271, 272, 273, 274, 1079, + 1080, 0, 1081, 0, 278, 1281, 1282, 281, 1283, 283, + 284, 285, 286, 287, 288, 0, 0, 289, 1284, 291, + 1285, 0, 293, 294, 295, 296, 297, 298, 299, 300, + 1286, 302, 303, 304, 305, 306, 307, 308, 309, 310, + 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, + 321, 1083, 1287, 1084, 325, 326, 327, 328, 1085, 329, + 330, 1288, 332, 1086, 795, 334, 1087, 336, 337, 338, + 0, 339, 340, 0, 0, 1088, 342, 343, 0, 0, + 344, 345, 346, 1289, 348, 1290, 797, 351, 352, 353, + 354, 355, 356, 357, 358, 359, 360, 361, 0, 0, + 0, 0, 362, 363, 798, 1291, 366, 367, 368, 369, + 370, 371, 0, 372, 373, 374, 375, 376, 377, 0, + 378, 379, 380, 381, 382, 1089, 384, 385, 386, 387, + 0, 388, 389, 390, 391, 392, 393, 394, 395, 396, + 397, 398, 399, 400, 0, 401, 402, 1292, 404, 405, + 406, 1090, 408, 409, 410, 411, 412, 413, 414, 415, + 416, 417, 418, 419, 420, 0, 1293, 421, 422, 423, + 424, 425, 426, 427, 428, 429, 0, 1294, 431, 432, + 1091, 434, 0, 435, 436, 437, 438, 439, 440, 441, + 442, 443, 444, 445, 446, 1295, 448, 800, 0, 0, + 450, 451, 0, 452, 1296, 454, 455, 456, 457, 458, + 0, 459, 1092, 1093, 0, 0, 462, 463, 801, 465, + 802, 1094, 467, 468, 1297, 470, 471, 472, 473, 474, + 0, 0, 475, 476, 477, 0, 478, 479, 480, 481, + 0, 482, 483, 484, 485, 486, 487, 1095, 489, 0, + 490, 1299, 492, 493, 494, 495, 496, 497, 498, 0, + 0, 499, 0, 0, 500, 501, 502, 503, 504, 505, + 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, + 516, 517, 518, 519, 520, 1096, 0, 0, 0, 0, + 0, 0, 1097, 1098, 1099, 0, 0, 0, 0, 1100, + 0, 1101, 0, 0, 0, 0, 0, 1102, 1103, 1104, + 1105, 117, 1056, 821, 1057, 1058, 1059, 1060, 1061, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 118, 119, 120, 121, 122, 123, 124, 125, 1717, 126, + 127, 128, 0, 0, 0, 0, 0, 1062, 0, 0, + 129, 130, 131, 0, 132, 133, 134, 135, 136, 137, + 138, 139, 1063, 141, 1064, 1065, 0, 144, 145, 146, + 147, 148, 149, 1066, 790, 150, 151, 152, 153, 1067, + 1068, 156, 0, 157, 158, 159, 160, 791, 0, 792, + 0, 1069, 164, 165, 166, 167, 168, 169, 170, 171, + 172, 0, 173, 174, 175, 176, 177, 178, 0, 179, + 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, + 1070, 191, 192, 1071, 194, 1072, 195, 0, 196, 197, + 198, 199, 200, 201, 0, 0, 202, 203, 204, 205, + 0, 0, 206, 207, 1073, 209, 210, 0, 211, 212, + 213, 0, 214, 215, 216, 0, 217, 218, 219, 220, + 1074, 222, 223, 224, 225, 226, 227, 793, 1075, 229, + 0, 230, 231, 1076, 233, 0, 234, 0, 235, 236, + 0, 237, 238, 239, 240, 241, 242, 0, 243, 0, + 1077, 1078, 246, 247, 0, 248, 249, 250, 251, 252, + 253, 254, 255, 256, 257, 258, 259, 0, 260, 261, + 262, 263, 264, 265, 266, 0, 267, 268, 269, 270, + 271, 272, 273, 274, 1079, 1080, 0, 1081, 0, 278, + 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, + 0, 0, 289, 290, 291, 292, 0, 293, 294, 295, + 296, 297, 298, 299, 300, 1082, 302, 303, 304, 305, + 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, + 316, 317, 318, 319, 320, 321, 1083, 323, 1084, 325, + 326, 327, 328, 1085, 329, 330, 331, 332, 1086, 795, + 334, 1087, 336, 337, 338, 0, 339, 340, 0, 0, + 1088, 342, 343, 0, 0, 344, 345, 346, 347, 348, + 349, 797, 351, 352, 353, 354, 355, 356, 357, 358, + 359, 360, 361, 0, 0, 0, 0, 362, 363, 798, + 365, 366, 367, 368, 369, 370, 371, 0, 372, 373, + 374, 375, 376, 377, 0, 378, 379, 380, 381, 382, + 1089, 384, 385, 386, 387, 0, 388, 389, 390, 391, + 392, 393, 394, 395, 396, 397, 398, 399, 400, 0, + 401, 402, 403, 404, 405, 406, 1090, 408, 409, 410, + 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, + 0, 0, 421, 422, 423, 424, 425, 426, 427, 428, + 429, 0, 430, 431, 432, 1091, 434, 0, 435, 436, + 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, + 447, 448, 800, 0, 0, 450, 451, 0, 452, 453, + 454, 455, 456, 457, 458, 0, 459, 1092, 1093, 0, + 0, 462, 463, 801, 465, 802, 1094, 467, 468, 803, + 470, 471, 472, 473, 474, 0, 0, 475, 476, 477, + 0, 478, 479, 480, 481, 0, 482, 483, 484, 485, + 486, 487, 1095, 489, 0, 490, 491, 492, 493, 494, + 495, 496, 497, 498, 0, 0, 499, 0, 0, 500, + 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, + 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, + 1096, 0, 0, 0, 0, 0, 0, 1097, 1098, 1099, + 0, 0, 0, 0, 1100, 0, 1101, 0, 0, 0, + 0, 0, 1102, 1103, 1104, 1105, 117, 1732, 821, 1057, + 1058, 1059, 1733, 1061, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 118, 119, 120, 121, 122, + 123, 124, 125, 1734, 126, 127, 128, 0, 0, 0, + 0, 0, 1062, 0, 0, 129, 130, 131, 0, 132, + 133, 134, 135, 136, 137, 138, 139, 1063, 141, 1064, + 1065, 0, 144, 145, 146, 147, 148, 149, 1066, 790, + 150, 151, 152, 153, 1067, 1068, 156, 0, 157, 158, + 159, 160, 791, 0, 792, 0, 1069, 164, 165, 166, + 167, 168, 169, 170, 171, 172, 0, 173, 174, 175, + 176, 177, 178, 0, 179, 180, 181, 182, 183, 184, + 185, 186, 187, 188, 189, 1070, 191, 192, 1071, 194, + 1072, 195, 0, 196, 197, 198, 199, 200, 201, 0, + 0, 202, 203, 204, 205, 0, 0, 206, 207, 1073, + 209, 210, 0, 211, 212, 213, 0, 214, 215, 216, + 0, 217, 218, 219, 220, 1074, 222, 223, 224, 225, + 226, 227, 793, 1075, 229, 0, 230, 231, 1076, 233, + 0, 234, 0, 235, 236, 0, 237, 238, 239, 240, + 241, 242, 0, 243, 0, 1077, 1078, 246, 247, 0, + 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, + 258, 259, 0, 260, 261, 262, 263, 264, 265, 266, + 0, 267, 268, 269, 270, 271, 272, 273, 274, 1079, + 1080, 0, 1081, 0, 278, 279, 280, 281, 282, 283, + 284, 285, 286, 287, 288, 0, 0, 289, 290, 291, + 292, 0, 293, 294, 295, 296, 297, 298, 299, 300, + 1082, 302, 303, 304, 305, 306, 307, 308, 309, 310, + 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, + 321, 1083, 323, 1084, 325, 326, 327, 328, 1085, 329, + 330, 331, 332, 1086, 795, 334, 1087, 336, 337, 338, + 0, 339, 340, 0, 0, 1088, 342, 343, 0, 0, + 344, 345, 346, 347, 348, 349, 797, 351, 352, 353, + 354, 355, 356, 357, 358, 359, 360, 361, 0, 0, + 0, 0, 362, 363, 798, 365, 366, 367, 368, 369, + 370, 371, 0, 372, 373, 374, 375, 376, 377, 0, + 378, 379, 380, 381, 382, 1089, 384, 385, 386, 387, + 0, 388, 389, 390, 391, 392, 393, 394, 395, 396, + 397, 398, 399, 400, 0, 401, 402, 403, 404, 405, + 406, 1090, 408, 409, 410, 411, 412, 413, 414, 415, + 416, 417, 418, 419, 420, 0, 0, 421, 422, 423, + 424, 425, 426, 427, 428, 429, 0, 430, 431, 432, + 1091, 434, 0, 435, 436, 437, 438, 439, 440, 441, + 442, 443, 444, 445, 446, 447, 448, 800, 0, 0, + 450, 451, 0, 452, 453, 454, 455, 456, 457, 458, + 0, 459, 1092, 1093, 0, 0, 462, 463, 801, 465, + 802, 1094, 467, 468, 803, 470, 471, 472, 473, 474, + 0, 0, 475, 476, 477, 0, 478, 479, 480, 481, + 0, 482, 483, 484, 485, 486, 487, 1095, 489, 0, + 490, 491, 492, 493, 494, 495, 496, 497, 498, 0, + 0, 499, 0, 0, 500, 501, 502, 503, 504, 505, + 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, + 516, 517, 518, 519, 520, 1096, 0, 0, 0, 0, + 0, 0, 1097, 1098, 1099, 0, 0, 0, 0, 1100, + 0, 1101, 0, 0, 0, 0, 0, 1102, 1103, 1104, + 1105, 117, 1056, 821, 1057, 1058, 1059, 1060, 1061, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 117, 1056, 821, 1057, 1058, 1059, - 1060, 1061, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 1675, 0, 118, 119, 120, 121, 122, 123, 124, - 125, 0, 126, 127, 128, 0, 0, 0, 0, 0, - 1062, 0, 0, 129, 130, 131, 0, 132, 133, 134, - 135, 136, 137, 138, 139, 1063, 141, 1064, 1065, 0, - 144, 145, 146, 147, 148, 149, 1066, 790, 150, 151, - 152, 153, 1067, 1068, 156, 1675, 157, 158, 159, 160, - 791, 0, 792, 0, 1069, 164, 165, 166, 167, 168, - 169, 170, 171, 172, 0, 173, 174, 175, 176, 177, - 178, 0, 179, 180, 181, 182, 183, 184, 185, 186, - 187, 188, 189, 1070, 191, 192, 1071, 194, 1072, 195, - 0, 196, 197, 198, 199, 200, 201, 14, 15, 202, - 203, 204, 205, 0, 0, 206, 207, 1073, 209, 210, - 0, 211, 212, 213, 0, 214, 215, 216, 0, 217, - 218, 219, 220, 1074, 222, 223, 224, 225, 226, 227, - 793, 1075, 229, 0, 230, 231, 1076, 233, 0, 234, - 0, 235, 236, 23, 237, 238, 239, 240, 241, 242, - 0, 243, 0, 1077, 1078, 246, 247, 0, 248, 249, - 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, - 0, 260, 261, 262, 263, 264, 265, 266, 0, 267, - 268, 269, 270, 271, 272, 273, 274, 1079, 1080, 0, - 1081, 0, 278, 279, 280, 281, 282, 283, 284, 285, - 286, 287, 288, 0, 0, 289, 290, 291, 292, 0, - 293, 294, 295, 296, 297, 298, 299, 300, 1082, 302, - 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, - 313, 314, 315, 316, 317, 318, 319, 320, 321, 1083, - 323, 1084, 325, 326, 327, 328, 1085, 329, 330, 331, - 332, 1086, 795, 334, 1087, 336, 337, 338, 0, 339, - 340, 0, 0, 1088, 342, 343, 0, 0, 344, 345, - 346, 347, 348, 349, 797, 351, 352, 353, 354, 355, - 356, 357, 358, 359, 360, 361, 26, 27, 28, 0, - 362, 363, 798, 365, 366, 367, 368, 369, 370, 371, - 0, 372, 373, 374, 375, 376, 377, 0, 378, 379, - 380, 381, 382, 1089, 384, 385, 386, 387, 0, 388, - 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, - 399, 400, 0, 401, 402, 403, 404, 405, 406, 1090, - 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, - 418, 419, 420, 33, 0, 421, 422, 423, 424, 425, - 426, 427, 428, 429, 35, 430, 431, 432, 1091, 434, - 0, 435, 436, 437, 438, 439, 440, 441, 442, 443, - 444, 445, 446, 447, 448, 800, 37, 0, 450, 451, - 38, 452, 453, 454, 455, 456, 457, 458, 0, 459, - 1092, 1093, 0, 0, 462, 463, 801, 465, 802, 1094, - 467, 468, 803, 470, 471, 472, 473, 474, 0, 0, - 475, 476, 477, 40, 478, 479, 480, 481, 0, 482, - 483, 484, 485, 486, 804, 1095, 489, 0, 490, 491, - 492, 493, 494, 495, 496, 497, 498, 0, 0, 499, - 0, 44, 500, 501, 502, 503, 504, 505, 506, 507, - 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, - 518, 519, 520, 1096, 0, 45, 0, 0, 0, 0, - 1097, 1098, 1099, 0, 0, 0, 0, 1100, 0, 1101, - 3290, 0, 0, 0, 0, 1102, 1103, 1104, 1105, 117, - 1056, 821, 1057, 1058, 1059, 1060, 1061, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 118, 119, - 120, 121, 122, 123, 124, 125, 0, 126, 127, 128, - 0, 0, 0, 0, 0, 1062, 0, 0, 129, 130, - 131, 0, 132, 133, 134, 135, 136, 137, 138, 139, - 1063, 141, 1064, 1065, 0, 144, 145, 146, 147, 148, - 149, 1066, 790, 150, 151, 152, 153, 1067, 1068, 156, - 0, 157, 158, 159, 160, 791, 0, 792, 0, 1069, - 164, 165, 166, 167, 168, 169, 170, 171, 172, 0, - 173, 174, 175, 176, 177, 178, 0, 179, 180, 181, - 182, 183, 184, 185, 186, 187, 188, 189, 1070, 191, - 192, 1071, 194, 1072, 195, 0, 196, 197, 198, 199, - 200, 201, 14, 15, 202, 203, 204, 205, 0, 0, - 206, 207, 1073, 209, 210, 0, 211, 212, 213, 0, - 214, 215, 216, 0, 217, 218, 219, 220, 1074, 222, - 223, 224, 225, 226, 227, 793, 1075, 229, 0, 230, - 231, 1076, 233, 0, 234, 0, 235, 236, 23, 237, - 238, 239, 240, 241, 242, 0, 243, 0, 1077, 1078, - 246, 247, 0, 248, 249, 250, 251, 252, 253, 254, - 255, 256, 257, 258, 259, 0, 260, 261, 262, 263, - 264, 265, 266, 0, 267, 268, 269, 270, 271, 272, - 273, 274, 1079, 1080, 0, 1081, 0, 278, 279, 280, - 281, 282, 283, 284, 285, 286, 287, 288, 0, 0, - 289, 290, 291, 292, 0, 293, 294, 295, 296, 297, - 298, 299, 300, 1082, 302, 303, 304, 305, 306, 307, - 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, - 318, 319, 320, 321, 1083, 323, 1084, 325, 326, 327, - 328, 1085, 329, 330, 331, 332, 1086, 795, 334, 1087, - 336, 337, 338, 0, 339, 340, 0, 0, 1088, 342, - 343, 0, 0, 344, 345, 346, 347, 348, 349, 797, - 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, - 361, 26, 27, 28, 0, 362, 363, 798, 365, 366, - 367, 368, 369, 370, 371, 0, 372, 373, 374, 375, - 376, 377, 0, 378, 379, 380, 381, 382, 1089, 384, - 385, 386, 387, 0, 388, 389, 390, 391, 392, 393, - 394, 395, 396, 397, 398, 399, 400, 0, 401, 402, - 403, 404, 405, 406, 1090, 408, 409, 410, 411, 412, - 413, 414, 415, 416, 417, 418, 419, 420, 33, 0, - 421, 422, 423, 424, 425, 426, 427, 428, 429, 35, - 430, 431, 432, 1091, 434, 0, 435, 436, 437, 438, - 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, - 800, 37, 0, 450, 451, 38, 452, 453, 454, 455, - 456, 457, 458, 0, 459, 1092, 1093, 0, 0, 462, - 463, 801, 465, 802, 1094, 467, 468, 803, 470, 471, - 472, 473, 474, 0, 0, 475, 476, 477, 40, 478, - 479, 480, 481, 0, 482, 483, 484, 485, 486, 804, - 1095, 489, 0, 490, 491, 492, 493, 494, 495, 496, - 497, 498, 0, 0, 499, 0, 44, 500, 501, 502, - 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, - 513, 514, 515, 516, 517, 518, 519, 520, 1096, 0, - 45, 0, 0, 0, 0, 1097, 1098, 1099, 0, 0, - 0, 0, 1100, 0, 1101, 0, 0, 0, 0, 0, - 1102, 1103, 1104, 1105, 117, 1056, 821, 1057, 1058, 1059, - 1060, 1061, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 118, 119, 120, 121, 122, 123, 124, - 125, 0, 126, 127, 128, 0, 0, 0, 0, 0, - 1062, 0, 0, 129, 130, 131, 0, 132, 133, 134, - 135, 136, 137, 138, 139, 1063, 141, 1064, 1065, 0, - 144, 145, 146, 147, 148, 149, 1066, 790, 150, 151, - 152, 153, 1067, 1068, 156, 0, 157, 158, 159, 160, - 791, 0, 792, 0, 1069, 164, 165, 166, 167, 168, - 169, 170, 171, 172, 0, 173, 174, 175, 176, 177, - 178, 0, 179, 180, 181, 182, 183, 184, 185, 186, - 187, 188, 189, 1070, 191, 192, 1071, 194, 1072, 195, - 0, 196, 197, 198, 199, 200, 201, 0, 0, 202, - 203, 204, 205, 0, 0, 206, 207, 1073, 209, 210, - 0, 211, 212, 213, 0, 214, 215, 216, 0, 217, - 218, 219, 220, 1074, 222, 223, 224, 225, 226, 227, - 793, 1075, 229, 0, 230, 231, 1076, 233, 0, 234, - 0, 235, 236, 23, 237, 238, 239, 240, 241, 242, - 0, 243, 0, 1077, 1078, 246, 247, 0, 248, 249, - 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, - 0, 260, 261, 262, 263, 264, 265, 266, 0, 267, - 268, 269, 270, 271, 272, 273, 274, 1079, 1080, 0, - 1081, 0, 278, 279, 280, 281, 282, 283, 284, 285, - 286, 287, 288, 0, 0, 289, 290, 291, 292, 0, - 293, 294, 295, 296, 297, 298, 299, 300, 1082, 302, - 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, - 313, 314, 315, 316, 317, 318, 319, 320, 321, 1083, - 323, 1084, 325, 326, 327, 328, 1085, 329, 330, 331, - 332, 1086, 795, 334, 1087, 336, 337, 338, 0, 339, - 340, 0, 0, 1088, 342, 343, 0, 0, 344, 345, - 346, 347, 348, 349, 797, 351, 352, 353, 354, 355, - 356, 357, 358, 359, 360, 361, 26, 27, 28, 0, - 362, 363, 798, 365, 366, 367, 368, 369, 370, 371, - 0, 372, 373, 374, 375, 376, 377, 0, 378, 379, - 380, 381, 382, 1089, 384, 385, 386, 387, 0, 388, - 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, - 399, 400, 0, 401, 402, 403, 404, 405, 406, 1090, - 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, - 418, 419, 420, 33, 0, 421, 422, 423, 424, 425, - 426, 427, 428, 429, 0, 430, 431, 432, 1091, 434, - 0, 435, 436, 437, 438, 439, 440, 441, 442, 443, - 444, 445, 446, 447, 448, 800, 0, 0, 450, 451, - 38, 452, 453, 454, 455, 456, 457, 458, 0, 459, - 1092, 1093, 0, 0, 462, 463, 801, 465, 802, 1094, - 467, 468, 803, 470, 471, 472, 473, 474, 0, 0, - 475, 476, 477, 40, 478, 479, 480, 481, 0, 482, - 483, 484, 485, 486, 804, 1095, 489, 0, 490, 491, - 492, 493, 494, 495, 496, 497, 498, 0, 0, 499, - 0, 44, 500, 501, 502, 503, 504, 505, 506, 507, - 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, - 518, 519, 520, 1096, 0, 45, 0, 0, 0, 0, - 1097, 1098, 1099, 0, 0, 0, 0, 1100, 0, 1101, - 0, 0, 0, 0, 0, 1102, 1103, 1104, 1105, 1264, - 1056, 821, 1057, 1058, 1059, 1060, 1061, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 118, 119, - 120, 121, 122, 123, 124, 125, 1265, 126, 127, 128, - 0, 0, 0, 1266, 0, 1062, 0, 0, 1267, 130, - 131, 0, 132, 133, 134, 1268, 136, 137, 138, 139, - 1063, 1269, 1064, 1065, 0, 144, 145, 146, 147, 148, - 149, 1066, 790, 150, 151, 152, 153, 1067, 1068, 156, - 0, 157, 158, 159, 160, 791, 0, 1270, 0, 1271, - 164, 165, 166, 167, 168, 1272, 170, 171, 172, 0, - 173, 174, 175, 176, 177, 178, 0, 1273, 180, 181, - 182, 183, 184, 185, 186, 187, 188, 189, 1070, 191, - 192, 1071, 194, 1072, 195, 0, 196, 197, 198, 199, - 200, 201, 0, 0, 202, 203, 204, 205, 1274, 0, - 206, 207, 1073, 209, 210, 0, 211, 212, 213, 0, - 214, 215, 216, 0, 217, 218, 219, 220, 1074, 222, - 223, 224, 225, 226, 227, 793, 1075, 229, 0, 230, - 231, 1076, 233, 0, 234, 0, 235, 1275, 0, 1276, - 238, 239, 1277, 1278, 242, 0, 243, 0, 1077, 1078, - 246, 247, 0, 248, 249, 250, 251, 252, 253, 254, - 1279, 256, 257, 258, 259, 0, 260, 261, 262, 263, - 264, 265, 266, 0, 267, 1280, 269, 270, 271, 272, - 273, 274, 1079, 1080, 0, 1081, 0, 278, 1281, 1282, - 281, 1283, 283, 284, 285, 286, 287, 288, 0, 0, - 289, 1284, 291, 1285, 0, 293, 294, 295, 296, 297, - 298, 299, 300, 1286, 302, 303, 304, 305, 306, 307, - 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, - 318, 319, 320, 321, 1083, 1287, 1084, 325, 326, 327, - 328, 1085, 329, 330, 1288, 332, 1086, 795, 334, 1087, - 336, 337, 338, 0, 339, 340, 0, 0, 1088, 342, - 343, 0, 0, 344, 345, 346, 1289, 348, 1290, 797, - 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, - 361, 0, 0, 0, 0, 362, 363, 798, 1291, 366, - 367, 368, 369, 370, 371, 0, 372, 373, 374, 375, - 376, 377, 0, 378, 379, 380, 381, 382, 1089, 384, - 385, 386, 387, 0, 388, 389, 390, 391, 392, 393, - 394, 395, 396, 397, 398, 399, 400, 0, 401, 402, - 1292, 404, 405, 406, 1090, 408, 409, 410, 411, 412, - 413, 414, 415, 416, 417, 418, 419, 420, 0, 1293, - 421, 422, 423, 424, 425, 426, 427, 428, 429, 0, - 1294, 431, 432, 1091, 434, 0, 435, 436, 437, 438, - 439, 440, 441, 442, 443, 444, 445, 446, 1295, 448, - 800, 0, 0, 450, 451, 0, 452, 1296, 454, 455, - 456, 457, 458, 0, 459, 1092, 1093, 0, 0, 462, - 463, 801, 465, 802, 1094, 467, 468, 1297, 470, 471, - 472, 473, 474, 0, 0, 475, 476, 477, 0, 478, - 479, 480, 481, 0, 482, 483, 484, 485, 486, 487, - 1095, 489, 1298, 490, 1299, 492, 493, 494, 495, 496, - 497, 498, 0, 0, 499, 0, 0, 500, 501, 502, - 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, - 513, 514, 515, 516, 517, 518, 519, 520, 1096, 0, - 0, 0, 0, 0, 0, 1097, 1098, 1099, 0, 0, - 0, 0, 1100, 0, 1101, 1300, 0, 0, 0, 0, - 1102, 1103, 1104, 1105, 117, 1056, 821, 1057, 1058, 0, - 1060, 1061, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 118, 119, 120, 121, 122, 123, 124, - 125, 0, 126, 127, 128, 0, 0, 0, 0, 0, - 1062, 0, 0, 129, 130, 131, 0, 132, 133, 134, - 135, 136, 137, 138, 139, 1063, 141, 1064, 1065, 0, - 144, 145, 146, 147, 148, 149, 1066, 790, 150, 151, - 152, 153, 1067, 1068, 156, 0, 157, 158, 159, 160, - 791, 0, 792, 0, 163, 164, 165, 166, 167, 168, - 169, 170, 171, 172, 0, 173, 174, 175, 176, 177, - 178, 0, 179, 180, 181, 182, 183, 184, 185, 186, - 187, 188, 189, 1070, 191, 192, 1071, 194, 0, 195, - 0, 196, 197, 198, 199, 200, 201, 14, 15, 202, - 203, 204, 205, 0, 0, 206, 207, 1073, 209, 210, - 0, 211, 212, 213, 0, 214, 215, 216, 0, 217, - 218, 219, 220, 1074, 222, 223, 224, 225, 226, 227, - 793, 1075, 229, 0, 230, 231, 1076, 233, 0, 234, - 0, 235, 236, 23, 237, 238, 239, 240, 241, 242, - 0, 243, 0, 1077, 1078, 246, 247, 0, 248, 249, - 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, - 0, 260, 261, 262, 263, 264, 265, 266, 0, 267, - 268, 269, 270, 271, 272, 273, 274, 1079, 1080, 0, - 1081, 0, 278, 279, 280, 281, 282, 283, 284, 285, - 286, 287, 288, 0, 0, 289, 290, 291, 292, 0, - 293, 294, 295, 296, 297, 298, 299, 300, 1082, 302, - 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, - 313, 314, 315, 316, 317, 318, 319, 320, 321, 1083, - 323, 1084, 325, 326, 327, 328, 0, 329, 330, 331, - 332, 1086, 795, 334, 1087, 336, 337, 338, 0, 339, - 340, 0, 0, 341, 342, 343, 0, 0, 344, 345, - 346, 347, 348, 349, 797, 351, 352, 353, 354, 355, - 356, 357, 358, 359, 360, 361, 26, 27, 28, 0, - 362, 363, 798, 365, 366, 367, 368, 369, 370, 371, - 0, 372, 373, 374, 375, 376, 377, 0, 378, 379, - 380, 381, 382, 1089, 384, 385, 386, 387, 0, 388, - 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, - 399, 400, 0, 401, 402, 403, 404, 405, 406, 1090, - 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, - 418, 419, 420, 33, 0, 421, 422, 423, 424, 425, - 426, 427, 428, 429, 35, 430, 431, 432, 1091, 434, - 0, 435, 436, 437, 438, 439, 440, 441, 442, 443, - 444, 445, 446, 447, 448, 800, 37, 0, 450, 451, - 38, 452, 453, 454, 455, 456, 457, 458, 0, 459, - 1092, 1093, 0, 0, 462, 463, 801, 465, 802, 1094, - 467, 468, 803, 470, 471, 472, 473, 474, 0, 0, - 475, 476, 477, 40, 478, 479, 480, 481, 0, 482, - 483, 484, 485, 486, 804, 1095, 489, 0, 490, 491, - 492, 493, 494, 495, 496, 497, 498, 0, 0, 499, - 0, 44, 500, 501, 502, 503, 504, 505, 506, 507, - 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, - 518, 519, 520, 0, 0, 45, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 1100, 0, 1101, - 0, 0, 0, 0, 0, 1102, 1103, 1104, 1105, 117, - 1056, 821, 1057, 1058, 1059, 1060, 1061, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 118, 119, - 120, 121, 122, 123, 124, 125, 0, 126, 127, 128, - 0, 0, 0, 0, 0, 1062, 0, 0, 129, 130, - 131, 0, 132, 133, 134, 135, 136, 137, 138, 139, - 1063, 141, 1064, 1065, 1447, 144, 145, 146, 147, 148, - 149, 1066, 790, 150, 151, 152, 153, 1067, 1068, 156, - 0, 157, 158, 159, 160, 791, 0, 792, 0, 1069, - 164, 165, 166, 167, 168, 169, 170, 171, 172, 0, - 173, 174, 175, 176, 177, 178, 0, 179, 180, 181, - 182, 183, 184, 185, 186, 187, 188, 189, 1070, 191, - 192, 1071, 194, 1072, 195, 0, 196, 197, 198, 199, - 200, 201, 0, 0, 202, 203, 204, 205, 0, 0, - 206, 207, 1073, 209, 210, 0, 211, 212, 213, 0, - 214, 215, 216, 0, 217, 218, 219, 220, 1074, 222, - 223, 224, 225, 226, 227, 793, 1075, 229, 0, 230, - 231, 1076, 233, 0, 234, 0, 235, 236, 1448, 237, - 238, 239, 240, 241, 242, 0, 243, 0, 1077, 1078, - 246, 247, 0, 248, 249, 250, 251, 252, 253, 254, - 255, 256, 257, 258, 259, 0, 260, 261, 262, 263, - 264, 265, 266, 0, 267, 268, 269, 270, 271, 272, - 273, 274, 1079, 1080, 0, 1081, 0, 278, 279, 280, - 281, 282, 283, 284, 285, 286, 287, 288, 0, 1449, - 289, 290, 291, 292, 0, 293, 294, 295, 296, 297, - 298, 299, 300, 1082, 302, 303, 304, 305, 306, 307, - 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, - 318, 319, 320, 321, 1083, 323, 1084, 325, 326, 327, - 328, 1085, 329, 330, 331, 332, 1086, 795, 334, 1087, - 336, 337, 338, 0, 339, 340, 0, 0, 1088, 342, - 343, 0, 0, 344, 345, 346, 347, 348, 349, 797, - 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, - 361, 0, 0, 0, 0, 362, 363, 798, 365, 366, - 367, 368, 369, 370, 371, 0, 372, 373, 374, 375, - 376, 377, 0, 378, 379, 380, 381, 382, 1089, 384, - 385, 386, 387, 0, 388, 389, 390, 391, 392, 393, - 394, 395, 396, 397, 398, 399, 400, 0, 401, 402, - 403, 404, 405, 406, 1090, 408, 409, 410, 411, 412, - 413, 414, 415, 416, 417, 418, 419, 420, 0, 0, - 421, 422, 423, 424, 425, 426, 427, 428, 429, 0, - 430, 431, 432, 1091, 434, 0, 435, 436, 437, 438, - 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, - 800, 0, 0, 450, 451, 0, 452, 453, 454, 455, - 456, 457, 458, 0, 459, 1092, 1093, 0, 1450, 462, - 463, 801, 465, 802, 1094, 467, 468, 803, 470, 471, - 472, 473, 474, 0, 0, 475, 476, 477, 0, 478, - 479, 480, 481, 0, 482, 483, 484, 485, 486, 487, - 1095, 489, 0, 490, 491, 492, 493, 494, 495, 496, - 497, 498, 0, 0, 499, 0, 0, 500, 501, 502, - 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, - 513, 514, 515, 516, 517, 518, 519, 520, 1096, 0, - 0, 0, 0, 0, 0, 1097, 1098, 1099, 0, 0, - 0, 0, 1100, 0, 1101, 0, 0, 0, 0, 0, - 1102, 1103, 1104, 1105, 1264, 1056, 821, 1057, 1058, 1059, - 1060, 1061, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 118, 119, 120, 121, 122, 123, 124, - 125, 0, 126, 127, 128, 0, 0, 0, 1266, 0, - 1062, 0, 0, 1267, 130, 131, 0, 132, 133, 134, - 1268, 136, 137, 138, 139, 1063, 1269, 1064, 1065, 0, - 144, 145, 146, 147, 148, 149, 1066, 790, 150, 151, - 152, 153, 1067, 1068, 156, 0, 157, 158, 159, 160, - 791, 0, 1270, 0, 1271, 164, 165, 166, 167, 168, - 1272, 170, 171, 172, 0, 173, 174, 175, 176, 177, - 178, 0, 1273, 180, 181, 182, 183, 184, 185, 186, - 187, 188, 189, 1070, 191, 192, 1071, 194, 1072, 195, - 0, 196, 197, 198, 199, 200, 201, 0, 0, 202, - 203, 204, 205, 0, 0, 206, 207, 1073, 209, 210, - 0, 211, 212, 213, 0, 214, 215, 216, 0, 217, - 218, 219, 220, 1074, 222, 223, 224, 225, 226, 227, - 793, 1075, 229, 0, 230, 231, 1076, 233, 0, 234, - 0, 235, 1275, 0, 1276, 238, 239, 1277, 1278, 242, - 0, 243, 0, 1077, 1078, 246, 247, 0, 248, 249, - 250, 251, 252, 253, 254, 1279, 256, 257, 258, 259, - 0, 260, 261, 262, 263, 264, 265, 266, 0, 267, - 1280, 269, 270, 271, 272, 273, 274, 1079, 1080, 0, - 1081, 0, 278, 1281, 1282, 281, 1283, 283, 284, 285, - 286, 287, 288, 0, 0, 289, 1284, 291, 1285, 0, - 293, 294, 295, 296, 297, 298, 299, 300, 1286, 302, - 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, - 313, 314, 315, 316, 317, 318, 319, 320, 321, 1083, - 1287, 1084, 325, 326, 327, 328, 1085, 329, 330, 1288, - 332, 1086, 795, 334, 1087, 336, 337, 338, 0, 339, - 340, 0, 0, 1088, 342, 343, 0, 0, 344, 345, - 346, 1289, 348, 1290, 797, 351, 352, 353, 354, 355, - 356, 357, 358, 359, 360, 361, 0, 0, 0, 0, - 362, 363, 798, 1291, 366, 367, 368, 369, 370, 371, - 0, 372, 373, 374, 375, 376, 377, 0, 378, 379, - 380, 381, 382, 1089, 384, 385, 386, 387, 0, 388, - 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, - 399, 400, 0, 401, 402, 1292, 404, 405, 406, 1090, - 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, - 418, 419, 420, 0, 1293, 421, 422, 423, 424, 425, - 426, 427, 428, 429, 0, 1294, 431, 432, 1091, 434, - 0, 435, 436, 437, 438, 439, 440, 441, 442, 443, - 444, 445, 446, 1295, 448, 800, 0, 0, 450, 451, - 0, 452, 1296, 454, 455, 456, 457, 458, 0, 459, - 1092, 1093, 0, 0, 462, 463, 801, 465, 802, 1094, - 467, 468, 1297, 470, 471, 472, 473, 474, 0, 0, - 475, 476, 477, 0, 478, 479, 480, 481, 0, 482, - 483, 484, 485, 486, 487, 1095, 489, 2327, 490, 1299, - 492, 493, 494, 495, 496, 497, 498, 0, 0, 499, - 0, 0, 500, 501, 502, 503, 504, 505, 506, 507, - 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, - 518, 519, 520, 1096, 0, 0, 0, 0, 0, 0, - 1097, 1098, 1099, 0, 0, 0, 0, 1100, 0, 1101, - 0, 0, 0, 0, 0, 1102, 1103, 1104, 1105, 1264, - 1056, 821, 1057, 1058, 1059, 1060, 1061, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 118, 119, - 120, 121, 122, 123, 124, 125, 0, 126, 127, 128, - 0, 0, 0, 1266, 0, 1062, 0, 0, 1267, 130, - 131, 0, 132, 133, 134, 1268, 136, 137, 138, 139, - 1063, 1269, 1064, 1065, 0, 144, 145, 146, 147, 148, - 149, 1066, 790, 150, 151, 152, 153, 1067, 1068, 156, - 0, 157, 158, 159, 160, 791, 0, 1270, 0, 1271, - 164, 165, 166, 167, 168, 1272, 170, 171, 172, 0, - 173, 174, 175, 176, 177, 178, 0, 1273, 180, 181, - 182, 183, 184, 185, 186, 187, 188, 189, 1070, 191, - 192, 1071, 194, 1072, 195, 0, 196, 197, 198, 199, - 200, 201, 0, 0, 202, 203, 204, 205, 0, 0, - 206, 207, 1073, 209, 210, 0, 211, 212, 213, 0, - 214, 215, 216, 0, 217, 218, 219, 220, 1074, 222, - 223, 224, 225, 226, 227, 793, 1075, 229, 0, 230, - 231, 1076, 233, 0, 234, 0, 235, 1275, 0, 1276, - 238, 239, 1277, 1278, 242, 0, 243, 0, 1077, 1078, - 246, 247, 0, 248, 249, 250, 251, 252, 253, 254, - 1279, 256, 257, 258, 259, 0, 260, 261, 262, 263, - 264, 265, 266, 0, 267, 1280, 269, 270, 271, 272, - 273, 274, 1079, 1080, 0, 1081, 0, 278, 1281, 1282, - 281, 1283, 283, 284, 285, 286, 287, 288, 0, 0, - 289, 1284, 291, 1285, 0, 293, 294, 295, 296, 297, - 298, 299, 300, 1286, 302, 303, 304, 305, 306, 307, - 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, - 318, 319, 320, 321, 1083, 1287, 1084, 325, 326, 327, - 328, 1085, 329, 330, 1288, 332, 1086, 795, 334, 1087, - 336, 337, 338, 0, 339, 340, 0, 0, 1088, 342, - 343, 0, 0, 344, 345, 346, 1289, 348, 1290, 797, - 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, - 361, 0, 0, 0, 0, 362, 363, 798, 1291, 366, - 367, 368, 369, 370, 371, 0, 372, 373, 374, 375, - 376, 377, 0, 378, 379, 380, 381, 382, 1089, 384, - 385, 386, 387, 0, 388, 389, 390, 391, 392, 393, - 394, 395, 396, 397, 398, 399, 400, 0, 401, 402, - 1292, 404, 405, 406, 1090, 408, 409, 410, 411, 412, - 413, 414, 415, 416, 417, 418, 419, 420, 0, 1293, - 421, 422, 423, 424, 425, 426, 427, 428, 429, 0, - 1294, 431, 432, 1091, 434, 0, 435, 436, 437, 438, - 439, 440, 441, 442, 443, 444, 445, 446, 1295, 448, - 800, 0, 0, 450, 451, 0, 452, 1296, 454, 455, - 456, 457, 458, 0, 459, 1092, 1093, 0, 0, 462, - 463, 801, 465, 802, 1094, 467, 468, 1297, 470, 471, - 472, 473, 474, 0, 0, 475, 476, 477, 0, 478, - 479, 480, 481, 0, 482, 483, 484, 485, 486, 487, - 1095, 489, 0, 490, 1299, 492, 493, 494, 495, 496, - 497, 498, 0, 0, 499, 0, 0, 500, 501, 502, - 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, - 513, 514, 515, 516, 517, 518, 519, 520, 1096, 0, - 0, 0, 0, 0, 0, 1097, 1098, 1099, 0, 0, - 0, 0, 1100, 0, 1101, 2384, 0, 0, 0, 0, - 1102, 1103, 1104, 1105, 117, 1056, 821, 1057, 1058, 1059, - 1060, 1061, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 118, 119, 120, 121, 122, 123, 124, - 125, -1138, 126, 127, 128, 0, 0, 0, 0, -1138, - 1062, 0, 0, 129, 130, 131, 0, 132, 133, 134, - 135, 136, 137, 138, 139, 1063, 141, 1064, 1065, 0, - 144, 145, 146, 147, 148, 149, 1066, 790, 150, 151, - 152, 153, 1067, 1068, 156, 0, 157, 158, 159, 160, - 791, 0, 792, 0, 1069, 164, 165, 166, 167, 168, - 169, 170, 171, 172, 0, 173, 174, 175, 176, 177, - 178, 0, 179, 180, 181, 182, 183, 184, 185, 186, - 187, 188, 189, 1070, 191, 192, 1071, 194, 1072, 195, - 0, 196, 197, 198, 199, 200, 201, 0, 0, 202, - 203, 204, 205, 0, 0, 206, 207, 1073, 209, 210, - 0, 211, 212, 213, 0, 214, 215, 216, 0, 217, - 218, 219, 220, 1074, 222, 223, 224, 225, 226, 227, - 793, 1075, 229, 0, 230, 231, 1076, 233, 0, 234, - 0, 235, 236, 0, 237, 238, 239, 240, 241, 242, - 0, 243, 0, 1077, 1078, 246, 247, 0, 248, 249, - 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, - 0, 260, 261, 262, 263, 264, 265, 266, 0, 267, - 268, 269, 270, 271, 272, 273, 274, 1079, 1080, 0, - 1081, 0, 278, 279, 280, 281, 282, 283, 284, 285, - 286, 287, 288, 0, 0, 289, 290, 291, 292, 0, - 293, 294, 295, 296, 297, 298, 299, 300, 1082, 302, - 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, - 313, 314, 315, 316, 317, 318, 319, 320, 321, 1083, - 323, 1084, 325, 326, 327, 328, 1085, 329, 330, 331, - 332, 1086, 795, 334, 1087, 336, 337, 338, 0, 339, - 340, 0, 0, 1088, 342, 343, 0, 0, 344, 345, - 346, 347, 348, 349, 797, 351, 352, 353, 354, 355, - 356, 357, 358, 359, 360, 361, 0, 0, 0, 0, - 362, 363, 798, 365, 366, 367, 368, 369, 370, 371, - 0, 372, 373, 374, 375, 376, 377, 0, 378, 379, - 380, 381, 382, 1089, 384, 385, 386, 387, 0, 388, - 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, - 399, 400, 0, 401, 402, 403, 404, 405, 406, 1090, - 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, - 418, 419, 420, 0, 0, 421, 422, 423, 424, 425, - 426, 427, 428, 429, 0, 430, 431, 432, 1091, 434, - -1138, 435, 436, 437, 438, 439, 440, 441, 442, 443, - 444, 445, 446, 447, 448, 800, 0, 0, 450, 451, - 0, 452, 453, 454, 455, 456, 457, 458, 0, 459, - 1092, 1093, 0, 0, 462, 463, 801, 465, 802, 1094, - 467, 468, 803, 470, 471, 472, 473, 474, 0, 0, - 475, 476, 477, 0, 478, 479, 480, 481, 0, 482, - 483, 484, 485, 486, 487, 1095, 489, 0, 490, 491, - 492, 493, 494, 495, 496, 497, 498, 0, 0, 499, - 0, 0, 500, 501, 502, 503, 504, 505, 506, 507, - 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, - 518, 519, 520, 1096, 0, 0, 0, 0, 0, 0, - 1097, 1098, 1099, 0, 0, 0, 0, 1100, 0, 1101, - 0, 0, 0, 0, 0, 1102, 1103, 1104, 1105, 1264, - 1056, 821, 1057, 1058, 1059, 1060, 1061, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 118, 119, - 120, 121, 122, 123, 124, 125, 0, 126, 127, 128, - 0, 0, 0, 1266, 0, 1062, 0, 0, 1267, 130, - 131, 0, 132, 133, 134, 1268, 136, 137, 138, 139, - 1063, 1269, 1064, 1065, 0, 144, 145, 146, 147, 148, - 149, 1066, 790, 150, 151, 152, 153, 1067, 1068, 156, - 0, 157, 158, 159, 160, 791, 0, 1270, 0, 1271, - 164, 165, 166, 167, 168, 1272, 170, 171, 172, 0, - 173, 174, 175, 176, 177, 178, 0, 1273, 180, 181, - 182, 183, 184, 185, 186, 187, 188, 189, 1070, 191, - 192, 1071, 194, 1072, 195, 0, 196, 197, 198, 199, - 200, 201, 0, 0, 202, 203, 204, 205, 0, 0, - 206, 207, 1073, 209, 210, 0, 211, 212, 213, 0, - 214, 215, 216, 0, 217, 218, 219, 220, 1074, 222, - 223, 224, 225, 226, 227, 793, 1075, 229, 0, 230, - 231, 1076, 233, 0, 234, 0, 235, 1275, 0, 1276, - 238, 239, 1277, 1278, 242, 0, 243, 0, 1077, 1078, - 246, 247, 0, 248, 249, 250, 251, 252, 253, 254, - 1279, 256, 257, 258, 259, 0, 260, 261, 262, 263, - 264, 265, 266, 0, 267, 1280, 269, 270, 271, 272, - 273, 274, 1079, 1080, 0, 1081, 0, 278, 1281, 1282, - 281, 1283, 283, 284, 285, 286, 287, 288, 0, 0, - 289, 1284, 291, 1285, 0, 293, 294, 295, 296, 297, - 298, 299, 300, 1286, 302, 303, 304, 305, 306, 307, - 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, - 318, 319, 320, 321, 1083, 1287, 1084, 325, 326, 327, - 328, 1085, 329, 330, 1288, 332, 1086, 795, 334, 1087, - 336, 337, 338, 0, 339, 340, 0, 0, 1088, 342, - 343, 0, 0, 344, 345, 346, 1289, 348, 1290, 797, - 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, - 361, 0, 0, 0, 0, 362, 363, 798, 1291, 366, - 367, 368, 369, 370, 371, 0, 372, 373, 374, 375, - 376, 377, 0, 378, 379, 380, 381, 382, 1089, 384, - 385, 386, 387, 0, 388, 389, 390, 391, 392, 393, - 394, 395, 396, 397, 398, 399, 400, 0, 401, 402, - 1292, 404, 405, 406, 1090, 408, 409, 410, 411, 412, - 413, 414, 415, 416, 417, 418, 419, 420, 0, 1293, - 421, 422, 423, 424, 425, 426, 427, 428, 429, 0, - 1294, 431, 432, 1091, 434, 0, 435, 436, 437, 438, - 439, 440, 441, 442, 443, 444, 445, 446, 1295, 448, - 800, 0, 0, 450, 451, 0, 452, 1296, 454, 455, - 456, 457, 458, 0, 459, 1092, 1093, 0, 0, 462, - 463, 801, 465, 802, 1094, 467, 468, 1297, 470, 471, - 472, 473, 474, 0, 0, 475, 476, 477, 0, 478, - 479, 480, 481, 0, 482, 483, 484, 485, 486, 487, - 1095, 489, 0, 490, 1299, 492, 493, 494, 495, 496, - 497, 498, 0, 0, 499, 0, 0, 500, 501, 502, - 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, - 513, 514, 515, 516, 517, 518, 519, 520, 1096, 0, - 0, 0, 0, 0, 0, 1097, 1098, 1099, 0, 0, - 0, 0, 1100, 0, 1101, 3156, 0, 0, 0, 0, - 1102, 1103, 1104, 1105, 1264, 1056, 821, 1057, 1058, 1059, - 1060, 1061, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 118, 119, 120, 121, 122, 123, 124, - 125, 0, 126, 127, 128, 0, 0, 0, 1266, 0, - 1062, 0, 0, 1267, 130, 131, 0, 132, 133, 134, - 1268, 136, 137, 138, 139, 1063, 1269, 1064, 1065, 0, - 144, 145, 146, 147, 148, 149, 1066, 790, 150, 151, - 152, 153, 1067, 1068, 156, 0, 157, 158, 159, 160, - 791, 0, 1270, 0, 1271, 164, 165, 166, 167, 168, - 1272, 170, 171, 172, 0, 173, 174, 175, 176, 177, - 178, 0, 1273, 180, 181, 182, 183, 184, 185, 186, - 187, 188, 189, 1070, 191, 192, 1071, 194, 1072, 195, - 0, 196, 197, 198, 199, 200, 201, 0, 0, 202, - 203, 204, 205, 0, 0, 206, 207, 1073, 209, 210, - 0, 211, 212, 213, 0, 214, 215, 216, 0, 217, - 218, 219, 220, 1074, 222, 223, 224, 225, 226, 227, - 793, 1075, 229, 0, 230, 231, 1076, 233, 0, 234, - 0, 235, 1275, 0, 1276, 238, 239, 1277, 1278, 242, - 0, 243, 0, 1077, 1078, 246, 247, 0, 248, 249, - 250, 251, 252, 253, 254, 1279, 256, 257, 258, 259, - 0, 260, 261, 262, 263, 264, 265, 266, 0, 267, - 1280, 269, 270, 271, 272, 273, 274, 1079, 1080, 0, - 1081, 0, 278, 1281, 1282, 281, 1283, 283, 284, 285, - 286, 287, 288, 0, 0, 289, 1284, 291, 1285, 0, - 293, 294, 295, 296, 297, 298, 299, 300, 1286, 302, - 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, - 313, 314, 315, 316, 317, 318, 319, 320, 321, 1083, - 1287, 1084, 325, 326, 327, 328, 1085, 329, 330, 1288, - 332, 1086, 795, 334, 1087, 336, 337, 338, 0, 339, - 340, 0, 0, 1088, 342, 343, 0, 0, 344, 345, - 346, 1289, 348, 1290, 797, 351, 352, 353, 354, 355, - 356, 357, 358, 359, 360, 361, 0, 0, 0, 0, - 362, 363, 798, 1291, 366, 367, 368, 369, 370, 371, - 0, 372, 373, 374, 375, 376, 377, 0, 378, 379, - 380, 381, 382, 1089, 384, 385, 386, 387, 0, 388, - 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, - 399, 400, 0, 401, 402, 1292, 404, 405, 406, 1090, - 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, - 418, 419, 420, 0, 1293, 421, 422, 423, 424, 425, - 426, 427, 428, 429, 0, 1294, 431, 432, 1091, 434, - 0, 435, 436, 437, 438, 439, 440, 441, 442, 443, - 444, 445, 446, 1295, 448, 800, 0, 0, 450, 451, - 0, 452, 1296, 454, 455, 456, 457, 458, 0, 459, - 1092, 1093, 0, 0, 462, 463, 801, 465, 802, 1094, - 467, 468, 1297, 470, 471, 472, 473, 474, 0, 0, - 475, 476, 477, 0, 478, 479, 480, 481, 0, 482, - 483, 484, 485, 486, 487, 1095, 489, 0, 490, 1299, - 492, 493, 494, 495, 496, 497, 498, 0, 0, 499, - 0, 0, 500, 501, 502, 503, 504, 505, 506, 507, - 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, - 518, 519, 520, 1096, 0, 0, 0, 0, 0, 0, - 1097, 1098, 1099, 0, 0, 0, 0, 1100, 0, 1101, - 0, 0, 0, 0, 0, 1102, 1103, 1104, 1105, 117, - 1056, 821, 1057, 1058, 1059, 1060, 1061, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 118, 119, - 120, 121, 122, 123, 124, 125, 1716, 126, 127, 128, - 0, 0, 0, 0, 0, 1062, 0, 0, 129, 130, - 131, 0, 132, 133, 134, 135, 136, 137, 138, 139, - 1063, 141, 1064, 1065, 0, 144, 145, 146, 147, 148, - 149, 1066, 790, 150, 151, 152, 153, 1067, 1068, 156, - 0, 157, 158, 159, 160, 791, 0, 792, 0, 1069, - 164, 165, 166, 167, 168, 169, 170, 171, 172, 0, - 173, 174, 175, 176, 177, 178, 0, 179, 180, 181, - 182, 183, 184, 185, 186, 187, 188, 189, 1070, 191, - 192, 1071, 194, 1072, 195, 0, 196, 197, 198, 199, - 200, 201, 0, 0, 202, 203, 204, 205, 0, 0, - 206, 207, 1073, 209, 210, 0, 211, 212, 213, 0, - 214, 215, 216, 0, 217, 218, 219, 220, 1074, 222, - 223, 224, 225, 226, 227, 793, 1075, 229, 0, 230, - 231, 1076, 233, 0, 234, 0, 235, 236, 0, 237, - 238, 239, 240, 241, 242, 0, 243, 0, 1077, 1078, - 246, 247, 0, 248, 249, 250, 251, 252, 253, 254, - 255, 256, 257, 258, 259, 0, 260, 261, 262, 263, - 264, 265, 266, 0, 267, 268, 269, 270, 271, 272, - 273, 274, 1079, 1080, 0, 1081, 0, 278, 279, 280, - 281, 282, 283, 284, 285, 286, 287, 288, 0, 0, - 289, 290, 291, 292, 0, 293, 294, 295, 296, 297, - 298, 299, 300, 1082, 302, 303, 304, 305, 306, 307, - 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, - 318, 319, 320, 321, 1083, 323, 1084, 325, 326, 327, - 328, 1085, 329, 330, 331, 332, 1086, 795, 334, 1087, - 336, 337, 338, 0, 339, 340, 0, 0, 1088, 342, - 343, 0, 0, 344, 345, 346, 347, 348, 349, 797, - 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, - 361, 0, 0, 0, 0, 362, 363, 798, 365, 366, - 367, 368, 369, 370, 371, 0, 372, 373, 374, 375, - 376, 377, 0, 378, 379, 380, 381, 382, 1089, 384, - 385, 386, 387, 0, 388, 389, 390, 391, 392, 393, - 394, 395, 396, 397, 398, 399, 400, 0, 401, 402, - 403, 404, 405, 406, 1090, 408, 409, 410, 411, 412, - 413, 414, 415, 416, 417, 418, 419, 420, 0, 0, - 421, 422, 423, 424, 425, 426, 427, 428, 429, 0, - 430, 431, 432, 1091, 434, 0, 435, 436, 437, 438, - 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, - 800, 0, 0, 450, 451, 0, 452, 453, 454, 455, - 456, 457, 458, 0, 459, 1092, 1093, 0, 0, 462, - 463, 801, 465, 802, 1094, 467, 468, 803, 470, 471, - 472, 473, 474, 0, 0, 475, 476, 477, 0, 478, - 479, 480, 481, 0, 482, 483, 484, 485, 486, 487, - 1095, 489, 0, 490, 491, 492, 493, 494, 495, 496, - 497, 498, 0, 0, 499, 0, 0, 500, 501, 502, - 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, - 513, 514, 515, 516, 517, 518, 519, 520, 1096, 0, - 0, 0, 0, 0, 0, 1097, 1098, 1099, 0, 0, - 0, 0, 1100, 0, 1101, 0, 0, 0, 0, 0, - 1102, 1103, 1104, 1105, 117, 1731, 821, 1057, 1058, 1059, - 1732, 1061, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 118, 119, 120, 121, 122, 123, 124, - 125, 1733, 126, 127, 128, 0, 0, 0, 0, 0, - 1062, 0, 0, 129, 130, 131, 0, 132, 133, 134, - 135, 136, 137, 138, 139, 1063, 141, 1064, 1065, 0, - 144, 145, 146, 147, 148, 149, 1066, 790, 150, 151, - 152, 153, 1067, 1068, 156, 0, 157, 158, 159, 160, - 791, 0, 792, 0, 1069, 164, 165, 166, 167, 168, - 169, 170, 171, 172, 0, 173, 174, 175, 176, 177, - 178, 0, 179, 180, 181, 182, 183, 184, 185, 186, - 187, 188, 189, 1070, 191, 192, 1071, 194, 1072, 195, - 0, 196, 197, 198, 199, 200, 201, 0, 0, 202, - 203, 204, 205, 0, 0, 206, 207, 1073, 209, 210, - 0, 211, 212, 213, 0, 214, 215, 216, 0, 217, - 218, 219, 220, 1074, 222, 223, 224, 225, 226, 227, - 793, 1075, 229, 0, 230, 231, 1076, 233, 0, 234, - 0, 235, 236, 0, 237, 238, 239, 240, 241, 242, - 0, 243, 0, 1077, 1078, 246, 247, 0, 248, 249, - 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, - 0, 260, 261, 262, 263, 264, 265, 266, 0, 267, - 268, 269, 270, 271, 272, 273, 274, 1079, 1080, 0, - 1081, 0, 278, 279, 280, 281, 282, 283, 284, 285, - 286, 287, 288, 0, 0, 289, 290, 291, 292, 0, - 293, 294, 295, 296, 297, 298, 299, 300, 1082, 302, - 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, - 313, 314, 315, 316, 317, 318, 319, 320, 321, 1083, - 323, 1084, 325, 326, 327, 328, 1085, 329, 330, 331, - 332, 1086, 795, 334, 1087, 336, 337, 338, 0, 339, - 340, 0, 0, 1088, 342, 343, 0, 0, 344, 345, - 346, 347, 348, 349, 797, 351, 352, 353, 354, 355, - 356, 357, 358, 359, 360, 361, 0, 0, 0, 0, - 362, 363, 798, 365, 366, 367, 368, 369, 370, 371, - 0, 372, 373, 374, 375, 376, 377, 0, 378, 379, - 380, 381, 382, 1089, 384, 385, 386, 387, 0, 388, - 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, - 399, 400, 0, 401, 402, 403, 404, 405, 406, 1090, - 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, - 418, 419, 420, 0, 0, 421, 422, 423, 424, 425, - 426, 427, 428, 429, 0, 430, 431, 432, 1091, 434, - 0, 435, 436, 437, 438, 439, 440, 441, 442, 443, - 444, 445, 446, 447, 448, 800, 0, 0, 450, 451, - 0, 452, 453, 454, 455, 456, 457, 458, 0, 459, - 1092, 1093, 0, 0, 462, 463, 801, 465, 802, 1094, - 467, 468, 803, 470, 471, 472, 473, 474, 0, 0, - 475, 476, 477, 0, 478, 479, 480, 481, 0, 482, - 483, 484, 485, 486, 487, 1095, 489, 0, 490, 491, - 492, 493, 494, 495, 496, 497, 498, 0, 0, 499, - 0, 0, 500, 501, 502, 503, 504, 505, 506, 507, - 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, - 518, 519, 520, 1096, 0, 0, 0, 0, 0, 0, - 1097, 1098, 1099, 0, 0, 0, 0, 1100, 0, 1101, - 0, 0, 0, 0, 0, 1102, 1103, 1104, 1105, 117, - 1056, 821, 1057, 1058, 1059, 1060, 1061, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 118, 119, - 120, 121, 122, 123, 124, 125, 0, 126, 127, 128, - 0, 0, 0, 0, 0, 1062, 0, 0, 129, 130, - 131, 0, 132, 133, 134, 135, 136, 137, 138, 139, - 1063, 141, 1064, 1065, 0, 144, 145, 146, 147, 148, - 149, 1066, 790, 150, 151, 152, 153, 1067, 1068, 156, - 0, 157, 158, 159, 160, 791, 0, 792, 0, 1069, - 164, 165, 166, 167, 168, 169, 170, 171, 172, 0, - 173, 174, 175, 176, 177, 178, 0, 179, 180, 181, - 182, 183, 184, 185, 186, 187, 188, 189, 1070, 191, - 192, 1071, 194, 1072, 195, 0, 196, 197, 198, 199, - 200, 201, 0, 0, 202, 203, 204, 205, 0, 0, - 206, 207, 1073, 209, 210, 0, 211, 212, 213, 0, - 214, 215, 216, 0, 217, 218, 219, 220, 1074, 222, - 223, 224, 225, 226, 227, 793, 1075, 229, 0, 230, - 231, 1076, 233, 0, 234, 0, 235, 236, 1448, 237, - 238, 239, 240, 241, 242, 0, 243, 0, 1077, 1078, - 246, 247, 0, 248, 249, 250, 251, 252, 253, 254, - 255, 256, 257, 258, 259, 0, 260, 261, 262, 263, - 264, 265, 266, 0, 267, 268, 269, 270, 271, 272, - 273, 274, 1079, 1080, 0, 1081, 0, 278, 279, 280, - 281, 282, 283, 284, 285, 286, 287, 288, 0, 0, - 289, 290, 291, 292, 0, 293, 294, 295, 296, 297, - 298, 299, 300, 1082, 302, 303, 304, 305, 306, 307, - 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, - 318, 319, 320, 321, 1083, 323, 1084, 325, 326, 327, - 328, 1085, 329, 330, 331, 332, 1086, 795, 334, 1087, - 336, 337, 338, 0, 339, 340, 0, 0, 1088, 342, - 343, 0, 0, 344, 345, 346, 347, 348, 349, 797, - 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, - 361, 0, 0, 0, 0, 362, 363, 798, 365, 366, - 367, 368, 369, 370, 371, 0, 372, 373, 374, 375, - 376, 377, 0, 378, 379, 380, 381, 382, 1089, 384, - 385, 386, 387, 0, 388, 389, 390, 391, 392, 393, - 394, 395, 396, 397, 398, 399, 400, 0, 401, 402, - 403, 404, 405, 406, 1090, 408, 409, 410, 411, 412, - 413, 414, 415, 416, 417, 418, 419, 420, 0, 0, - 421, 422, 423, 424, 425, 426, 427, 428, 429, 0, - 430, 431, 432, 1091, 434, 0, 435, 436, 437, 438, - 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, - 800, 0, 0, 450, 451, 0, 452, 453, 454, 455, - 456, 457, 458, 0, 459, 1092, 1093, 0, 0, 462, - 463, 801, 465, 802, 1094, 467, 468, 803, 470, 471, - 472, 473, 474, 0, 0, 475, 476, 477, 0, 478, - 479, 480, 481, 0, 482, 483, 484, 485, 486, 487, - 1095, 489, 0, 490, 491, 492, 493, 494, 495, 496, - 497, 498, 0, 0, 499, 0, 0, 500, 501, 502, - 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, - 513, 514, 515, 516, 517, 518, 519, 520, 1096, 0, - 0, 0, 0, 0, 0, 1097, 1098, 1099, 0, 0, - 0, 0, 1100, 0, 1101, 0, 0, 0, 0, 0, - 1102, 1103, 1104, 1105, 117, 1056, 821, 1057, 1058, 1059, - 1060, 1061, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 118, 119, 120, 121, 122, 123, 124, - 125, 0, 126, 127, 128, 0, 0, 0, 0, 0, - 1062, 0, 0, 129, 130, 131, 0, 132, 133, 134, - 135, 136, 137, 138, 139, 1063, 141, 1064, 1065, 0, - 144, 145, 146, 147, 148, 149, 1066, 790, 150, 151, - 152, 153, 1067, 1068, 156, 0, 157, 158, 159, 160, - 791, 0, 792, 0, 1069, 164, 165, 166, 167, 168, - 169, 170, 171, 172, 0, 173, 174, 175, 176, 177, - 178, 0, 179, 180, 181, 182, 183, 184, 185, 186, - 187, 188, 189, 1070, 191, 192, 1071, 194, 1072, 195, - 0, 196, 197, 198, 199, 200, 201, 0, 0, 202, - 203, 204, 205, 0, 0, 206, 207, 1073, 209, 210, - 0, 211, 212, 213, 0, 214, 215, 216, 0, 217, - 218, 219, 220, 1074, 222, 223, 224, 225, 226, 227, - 793, 1075, 229, 0, 230, 231, 1076, 233, 0, 234, - 0, 235, 236, 0, 237, 238, 239, 240, 241, 242, - 0, 243, 0, 1077, 1078, 246, 247, 0, 248, 249, - 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, - 0, 260, 261, 262, 263, 264, 265, 266, 0, 267, - 268, 269, 270, 271, 272, 273, 274, 1079, 1080, 0, - 1081, 0, 278, 279, 280, 281, 282, 283, 284, 285, - 286, 287, 288, 0, 0, 289, 290, 291, 292, 0, - 293, 294, 295, 296, 297, 298, 299, 300, 1082, 302, - 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, - 313, 314, 315, 316, 317, 318, 319, 320, 321, 1083, - 323, 1084, 325, 326, 327, 328, 1085, 329, 330, 331, - 332, 1086, 795, 334, 1087, 336, 337, 338, 0, 339, - 340, 0, 0, 1088, 342, 343, 0, 0, 344, 345, - 346, 347, 348, 349, 797, 351, 352, 353, 354, 355, - 356, 357, 358, 359, 360, 361, 0, 0, 0, 0, - 362, 363, 798, 365, 366, 367, 368, 369, 370, 371, - 0, 372, 373, 374, 375, 376, 377, 0, 378, 379, - 380, 381, 382, 1089, 384, 385, 386, 387, 0, 388, - 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, - 399, 400, 0, 401, 402, 403, 404, 405, 406, 1090, - 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, - 418, 419, 420, 0, 0, 421, 422, 423, 424, 425, - 426, 427, 428, 429, 0, 430, 431, 432, 1091, 434, - 0, 435, 436, 437, 438, 439, 440, 441, 442, 443, - 444, 445, 446, 447, 448, 800, 0, 0, 450, 451, - 0, 452, 453, 454, 455, 456, 457, 458, 0, 459, - 1092, 1093, 0, 0, 462, 463, 801, 465, 802, 1094, - 467, 468, 803, 470, 471, 472, 473, 474, 0, 0, - 475, 476, 477, 0, 478, 479, 480, 481, 0, 482, - 483, 484, 485, 486, 487, 1095, 489, 0, 490, 491, - 492, 493, 494, 495, 496, 497, 498, 0, 0, 499, - 0, 0, 500, 501, 502, 503, 504, 505, 506, 507, - 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, - 518, 519, 520, 1096, 0, 0, 0, 0, 0, 0, - 1097, 1098, 1099, 0, 0, 0, 0, 1100, 0, 1101, - 2092, 0, 0, 0, 0, 1102, 1103, 1104, 1105, 117, - 1056, 821, 1057, 1058, 1059, 1060, 1061, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 118, 119, - 120, 121, 122, 123, 124, 125, 0, 126, 127, 128, - 0, 0, 0, 0, 0, 1062, 0, 0, 129, 130, - 131, 0, 132, 133, 134, 135, 136, 137, 138, 139, - 1063, 141, 1064, 1065, 0, 144, 145, 146, 147, 148, - 149, 1066, 790, 150, 151, 152, 153, 1067, 1068, 156, - 0, 157, 158, 159, 160, 791, 0, 792, 0, 1069, - 164, 165, 166, 167, 168, 169, 170, 171, 172, 0, - 173, 174, 175, 176, 177, 178, 0, 179, 180, 181, - 182, 183, 184, 185, 186, 187, 188, 189, 1070, 191, - 192, 1071, 194, 1072, 195, 0, 196, 197, 198, 199, - 200, 201, 0, 0, 202, 203, 204, 205, 0, 0, - 206, 207, 1073, 209, 210, 0, 211, 212, 213, 0, - 214, 215, 216, 0, 217, 218, 219, 220, 1074, 222, - 223, 224, 225, 226, 227, 793, 1075, 229, 0, 230, - 231, 1076, 233, 0, 234, 0, 235, 236, 0, 237, - 238, 239, 240, 241, 242, 0, 243, 0, 1077, 1078, - 246, 247, 0, 248, 249, 250, 251, 252, 253, 254, - 255, 256, 257, 258, 259, 0, 260, 261, 262, 263, - 264, 265, 266, 0, 267, 268, 269, 270, 271, 272, - 273, 274, 1079, 1080, 0, 1081, 0, 278, 279, 280, - 281, 282, 283, 284, 285, 286, 287, 288, 0, 0, - 289, 290, 291, 292, 0, 293, 294, 295, 296, 297, - 298, 299, 300, 1082, 302, 303, 304, 305, 306, 307, - 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, - 318, 319, 320, 321, 1083, 323, 1084, 325, 326, 327, - 328, 1085, 329, 330, 331, 332, 1086, 795, 334, 1087, - 336, 337, 338, 0, 339, 340, 0, 0, 1088, 342, - 343, 0, 0, 344, 345, 346, 347, 348, 349, 797, - 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, - 361, 0, 0, 0, 0, 362, 363, 798, 365, 366, - 367, 368, 369, 370, 371, 0, 372, 373, 374, 375, - 376, 377, 0, 378, 379, 380, 381, 382, 1089, 384, - 385, 386, 387, 0, 388, 389, 390, 391, 392, 393, - 394, 395, 396, 397, 398, 399, 400, 0, 401, 402, - 403, 404, 405, 406, 1090, 408, 409, 410, 411, 412, - 413, 414, 415, 416, 417, 418, 419, 420, 0, 0, - 421, 422, 423, 424, 425, 426, 427, 428, 429, 0, - 430, 431, 432, 1091, 434, 0, 435, 436, 437, 438, - 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, - 800, 0, 0, 450, 451, 0, 452, 453, 454, 455, - 456, 457, 458, 0, 459, 1092, 1093, 0, 0, 462, - 463, 801, 465, 802, 1094, 467, 468, 803, 470, 471, - 472, 473, 474, 0, 0, 475, 476, 477, 0, 478, - 479, 480, 481, 0, 482, 483, 484, 485, 486, 487, - 1095, 489, 0, 490, 491, 492, 493, 494, 495, 496, - 497, 498, 0, 0, 499, 0, 0, 500, 501, 502, - 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, - 513, 514, 515, 516, 517, 518, 519, 520, 1096, 0, - 0, 0, 0, 0, 0, 1097, 1098, 1099, 0, 0, - 0, 0, 1100, 0, 1101, 0, 0, 0, 0, 2690, - 1102, 1103, 1104, 1105, 117, 1056, 821, 1057, 1058, 1059, - 1060, 1061, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 118, 119, 120, 121, 122, 123, 124, - 125, 0, 126, 127, 128, 0, 0, 0, 0, 0, - 1062, 0, 0, 129, 130, 131, 0, 132, 133, 134, - 135, 136, 137, 138, 139, 1063, 141, 1064, 1065, 0, - 144, 145, 146, 147, 148, 149, 1066, 790, 150, 151, - 152, 153, 1067, 1068, 156, 0, 157, 158, 159, 160, - 791, 0, 792, 0, 1069, 164, 165, 166, 167, 168, - 169, 170, 171, 172, 0, 173, 174, 175, 176, 177, - 178, 0, 179, 180, 181, 182, 183, 184, 185, 186, - 187, 188, 189, 1070, 191, 192, 1071, 194, 1072, 195, - 0, 196, 197, 198, 199, 200, 201, 0, 0, 202, - 203, 204, 205, 0, 0, 206, 207, 1073, 209, 210, - 0, 211, 212, 213, 0, 214, 215, 216, 0, 217, - 218, 219, 220, 1074, 222, 223, 224, 225, 226, 227, - 793, 1075, 229, 0, 230, 231, 1076, 233, 0, 234, - 0, 235, 236, 0, 237, 238, 239, 240, 241, 242, - 0, 243, 0, 1077, 1078, 246, 247, 0, 248, 249, - 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, - 0, 260, 261, 262, 263, 264, 265, 266, 0, 267, - 268, 269, 270, 271, 272, 273, 274, 1079, 1080, 0, - 1081, 0, 278, 279, 280, 281, 282, 283, 284, 285, - 286, 287, 288, 0, 0, 289, 290, 291, 292, 0, - 293, 294, 295, 296, 297, 298, 299, 300, 1082, 302, - 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, - 313, 314, 315, 316, 317, 318, 319, 320, 321, 1083, - 323, 1084, 325, 326, 327, 328, 1085, 329, 330, 331, - 332, 1086, 795, 334, 1087, 336, 337, 338, 0, 339, - 340, 0, 0, 1088, 342, 343, 0, 0, 344, 345, - 346, 347, 348, 349, 797, 351, 352, 353, 354, 355, - 356, 357, 358, 359, 360, 361, 0, 0, 0, 0, - 362, 363, 798, 365, 366, 367, 368, 369, 370, 371, - 0, 372, 373, 374, 375, 376, 377, 0, 378, 379, - 380, 381, 382, 1089, 384, 385, 386, 387, 0, 388, - 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, - 399, 400, 0, 401, 402, 403, 404, 405, 406, 1090, - 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, - 418, 419, 420, 0, 0, 421, 422, 423, 424, 425, - 426, 427, 428, 429, 0, 430, 431, 432, 1091, 434, - 0, 435, 436, 437, 438, 439, 440, 441, 442, 443, - 444, 445, 446, 447, 448, 800, 0, 0, 450, 451, - 2749, 452, 453, 454, 455, 456, 457, 458, 0, 459, - 1092, 1093, 0, 0, 462, 463, 801, 465, 802, 1094, - 467, 468, 803, 470, 471, 472, 473, 474, 0, 0, - 475, 476, 477, 0, 478, 479, 480, 481, 0, 482, - 483, 484, 485, 486, 487, 1095, 489, 0, 490, 491, - 492, 493, 494, 495, 496, 497, 498, 0, 0, 499, - 0, 0, 500, 501, 502, 503, 504, 505, 506, 507, - 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, - 518, 519, 520, 1096, 0, 0, 0, 0, 0, 0, - 1097, 1098, 1099, 0, 0, 0, 0, 1100, 0, 1101, - 0, 0, 0, 0, 0, 1102, 1103, 1104, 1105, 117, - 1056, 821, 1057, 1058, 1059, 1060, 1061, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 118, 119, - 120, 121, 122, 123, 124, 125, 0, 126, 127, 128, - 0, 0, 0, 0, 0, 1062, 0, 0, 129, 130, - 131, 0, 132, 133, 134, 135, 136, 137, 138, 139, - 1063, 141, 1064, 1065, 0, 144, 145, 146, 147, 148, - 149, 1066, 790, 150, 151, 152, 153, 1067, 1068, 156, - 0, 157, 158, 159, 160, 791, 0, 792, 0, 1069, - 164, 165, 166, 167, 168, 169, 170, 171, 172, 0, - 173, 174, 175, 176, 177, 178, 0, 179, 180, 181, - 182, 183, 184, 185, 186, 187, 188, 189, 1070, 191, - 192, 1071, 194, 1072, 195, 0, 196, 197, 198, 199, - 200, 201, 0, 0, 202, 203, 204, 205, 0, 0, - 206, 207, 1073, 209, 210, 0, 211, 212, 213, 0, - 214, 215, 216, 0, 217, 218, 219, 220, 1074, 222, - 223, 224, 225, 226, 227, 793, 1075, 229, 0, 230, - 231, 1076, 233, 0, 234, 0, 235, 236, 0, 237, - 238, 239, 240, 241, 242, 0, 243, 0, 1077, 1078, - 246, 247, 0, 248, 249, 250, 251, 252, 253, 254, - 255, 256, 257, 258, 259, 0, 260, 261, 262, 263, - 264, 265, 266, 0, 267, 268, 269, 270, 271, 272, - 273, 274, 1079, 1080, 0, 1081, 0, 278, 279, 280, - 281, 282, 283, 284, 285, 286, 287, 288, 0, 0, - 289, 290, 291, 292, 0, 293, 294, 295, 296, 297, - 298, 299, 300, 1082, 302, 303, 304, 305, 306, 307, - 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, - 318, 319, 320, 321, 1083, 323, 1084, 325, 326, 327, - 328, 1085, 329, 330, 331, 332, 1086, 795, 334, 1087, - 336, 337, 338, 0, 339, 340, 0, 0, 1088, 342, - 343, 0, 0, 344, 345, 346, 347, 348, 349, 797, - 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, - 361, 0, 0, 0, 0, 362, 363, 798, 365, 366, - 367, 368, 369, 370, 371, 0, 372, 373, 374, 375, - 376, 377, 0, 378, 379, 380, 381, 382, 1089, 384, - 385, 386, 387, 0, 388, 389, 390, 391, 392, 393, - 394, 395, 396, 397, 398, 399, 400, 0, 401, 402, - 403, 404, 405, 406, 1090, 408, 409, 410, 411, 412, - 413, 414, 415, 416, 417, 418, 419, 420, 0, 0, - 421, 422, 423, 424, 425, 426, 427, 428, 429, 0, - 430, 431, 432, 1091, 434, 0, 435, 436, 437, 438, - 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, - 800, 0, 0, 450, 451, 0, 452, 453, 454, 455, - 456, 457, 458, 0, 459, 1092, 1093, 0, 0, 462, - 463, 801, 465, 802, 1094, 467, 468, 803, 470, 471, - 472, 473, 474, 0, 0, 475, 476, 477, 0, 478, - 479, 480, 481, 0, 482, 483, 484, 485, 486, 487, - 1095, 489, 0, 490, 491, 492, 493, 494, 495, 496, - 497, 498, 0, 2875, 499, 0, 0, 500, 501, 502, - 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, - 513, 514, 515, 516, 517, 518, 519, 520, 1096, 0, - 0, 0, 0, 0, 0, 1097, 1098, 1099, 0, 0, - 0, 0, 1100, 0, 1101, 0, 0, 0, 0, 0, - 1102, 1103, 1104, 1105, 117, 1056, 821, 1057, 1058, 1059, - 1060, 1061, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 118, 119, 120, 121, 122, 123, 124, - 125, 3093, 126, 127, 128, 0, 0, 0, 0, 0, - 1062, 0, 0, 129, 130, 131, 0, 132, 133, 134, - 135, 136, 137, 138, 139, 1063, 141, 1064, 1065, 0, - 144, 145, 146, 147, 148, 149, 1066, 790, 150, 151, - 152, 153, 1067, 1068, 156, 0, 157, 158, 159, 160, - 791, 0, 792, 0, 1069, 164, 165, 166, 167, 168, - 169, 170, 171, 172, 0, 173, 174, 175, 176, 177, - 178, 0, 179, 180, 3094, 182, 183, 184, 185, 186, - 187, 188, 189, 1070, 191, 192, 1071, 194, 1072, 195, - 0, 196, 197, 198, 199, 200, 201, 0, 0, 202, - 203, 204, 205, 0, 0, 206, 207, 1073, 209, 210, - 0, 211, 212, 213, 0, 214, 215, 216, 0, 217, - 218, 219, 220, 1074, 222, 223, 224, 225, 226, 227, - 793, 1075, 229, 0, 230, 231, 1076, 233, 0, 234, - 0, 235, 236, 0, 237, 238, 239, 240, 241, 242, - 0, 243, 0, 3095, 1078, 246, 247, 0, 248, 249, - 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, - 0, 260, 261, 262, 263, 264, 265, 266, 0, 267, - 268, 269, 270, 271, 272, 273, 274, 1079, 1080, 0, - 1081, 0, 278, 279, 280, 281, 282, 283, 284, 285, - 286, 287, 288, 0, 0, 289, 290, 291, 292, 0, - 293, 294, 295, 296, 297, 298, 299, 300, 1082, 302, - 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, - 313, 314, 315, 316, 317, 318, 319, 320, 321, 1083, - 323, 1084, 325, 326, 327, 328, 1085, 329, 330, 331, - 332, 1086, 795, 334, 1087, 336, 337, 338, 0, 339, - 340, 0, 0, 1088, 342, 343, 0, 0, 344, 345, - 346, 347, 348, 349, 797, 351, 352, 353, 354, 355, - 356, 357, 358, 359, 360, 361, 0, 0, 0, 0, - 362, 363, 798, 365, 366, 367, 368, 369, 370, 371, - 0, 372, 373, 374, 375, 376, 377, 0, 378, 379, - 380, 381, 382, 1089, 384, 385, 386, 387, 0, 388, - 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, - 399, 400, 0, 401, 402, 403, 404, 405, 3096, 1090, - 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, - 418, 419, 420, 0, 0, 421, 422, 423, 424, 425, - 426, 427, 428, 429, 0, 430, 431, 432, 1091, 434, - 0, 435, 436, 437, 438, 439, 440, 441, 442, 443, - 444, 445, 446, 447, 448, 800, 0, 0, 450, 451, - 0, 452, 453, 454, 455, 456, 457, 458, 0, 459, - 1092, 1093, 0, 0, 462, 463, 801, 465, 802, 1094, - 467, 468, 803, 470, 471, 472, 473, 474, 0, 0, - 475, 476, 477, 0, 478, 479, 480, 481, 0, 482, - 483, 484, 485, 486, 487, 1095, 489, 0, 490, 491, - 492, 493, 494, 495, 496, 497, 498, 0, 0, 499, - 0, 0, 500, 501, 502, 503, 504, 505, 506, 507, - 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, - 518, 519, 520, 1096, 0, 0, 0, 0, 0, 0, - 1097, 1098, 1099, 0, 0, 0, 0, 1100, 0, 3097, - 0, 0, 0, 0, 0, 1102, 1103, 1104, 1105, 117, - 1056, 821, 1057, 1058, 1059, 1060, 1061, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 118, 119, - 120, 121, 122, 123, 124, 125, 0, 126, 127, 128, - 0, 0, 0, 0, 0, 1062, 0, 0, 129, 130, - 131, 0, 132, 133, 134, 135, 136, 137, 138, 139, - 1063, 141, 1064, 1065, 0, 144, 145, 146, 147, 148, - 149, 1066, 790, 150, 151, 152, 153, 1067, 1068, 156, - 0, 157, 158, 159, 160, 791, 0, 792, 0, 1069, - 164, 165, 166, 167, 168, 169, 170, 171, 172, 0, - 173, 174, 175, 176, 177, 178, 0, 179, 180, 181, - 182, 183, 184, 185, 186, 187, 188, 189, 1070, 191, - 192, 1071, 194, 1072, 195, 0, 196, 197, 198, 199, - 200, 201, 0, 0, 202, 203, 204, 205, 0, 0, - 206, 207, 1073, 209, 210, 0, 211, 212, 213, 0, - 214, 215, 216, 0, 217, 218, 219, 220, 1074, 222, - 223, 224, 225, 226, 227, 793, 1075, 229, 0, 230, - 231, 1076, 233, 0, 234, 0, 235, 236, 0, 237, - 238, 239, 240, 241, 242, 0, 243, 0, 1077, 1078, - 246, 247, 0, 248, 249, 250, 251, 252, 253, 254, - 255, 256, 257, 258, 259, 0, 260, 261, 262, 263, - 264, 265, 266, 0, 267, 268, 269, 270, 271, 272, - 273, 274, 1079, 1080, 0, 1081, 0, 278, 279, 280, - 281, 282, 283, 284, 285, 286, 287, 288, 0, 0, - 289, 290, 291, 292, 0, 293, 294, 295, 296, 297, - 298, 299, 300, 1082, 302, 303, 304, 305, 306, 307, - 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, - 318, 319, 320, 321, 1083, 323, 1084, 325, 326, 327, - 328, 1085, 329, 330, 331, 332, 1086, 795, 334, 1087, - 336, 337, 338, 0, 339, 340, 0, 0, 1088, 342, - 343, 0, 0, 344, 345, 346, 347, 348, 349, 797, - 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, - 361, 0, 0, 0, 0, 362, 363, 798, 365, 366, - 367, 368, 369, 370, 371, 0, 372, 373, 374, 375, - 376, 377, 0, 378, 379, 380, 381, 382, 1089, 384, - 385, 386, 387, 0, 388, 389, 390, 391, 392, 393, - 394, 395, 396, 397, 398, 399, 400, 0, 401, 402, - 403, 404, 405, 406, 1090, 408, 409, 410, 411, 412, - 413, 414, 415, 416, 417, 418, 419, 420, 0, 0, - 421, 422, 423, 424, 425, 426, 427, 428, 429, 0, - 430, 431, 432, 1091, 434, 0, 435, 436, 437, 438, - 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, - 800, 0, 0, 450, 451, 0, 452, 453, 454, 455, - 456, 457, 458, 0, 459, 1092, 1093, 0, 0, 462, - 463, 801, 465, 802, 1094, 467, 468, 803, 470, 471, - 472, 473, 474, 0, 0, 475, 476, 477, 0, 478, - 479, 480, 481, 0, 482, 483, 484, 485, 486, 487, - 1095, 489, 0, 490, 491, 492, 493, 494, 495, 496, - 497, 498, 0, 0, 499, 0, 0, 500, 501, 502, - 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, - 513, 514, 515, 516, 517, 518, 519, 520, 1096, 0, - 0, 0, 0, 0, 0, 1097, 1098, 1099, 0, 0, - 0, 0, 1100, 0, 1101, 0, 0, 0, 0, 3318, - 1102, 1103, 1104, 1105, 117, 1056, 821, 1057, 1058, 1059, - 1060, 1061, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 118, 119, 120, 121, 122, 123, 124, - 125, 0, 126, 127, 128, 0, 0, 0, 0, 0, - 1062, 0, 0, 129, 130, 131, 0, 132, 133, 134, - 135, 136, 137, 138, 139, 1063, 141, 1064, 1065, 0, - 144, 145, 146, 147, 148, 149, 1066, 790, 150, 151, - 152, 153, 1067, 1068, 156, 0, 157, 158, 159, 160, - 791, 0, 792, 0, 1069, 164, 165, 166, 167, 168, - 169, 170, 171, 172, 0, 173, 174, 175, 176, 177, - 178, 0, 179, 180, 181, 182, 183, 184, 185, 186, - 187, 188, 189, 1070, 191, 192, 1071, 194, 1072, 195, - 0, 196, 197, 198, 199, 200, 201, 0, 0, 202, - 203, 204, 205, 0, 0, 206, 207, 1073, 209, 210, - 0, 211, 212, 213, 0, 214, 215, 216, 0, 217, - 218, 219, 220, 1074, 222, 223, 224, 225, 226, 227, - 793, 1075, 229, 0, 230, 231, 1076, 233, 0, 234, - 0, 235, 236, 0, 237, 238, 239, 240, 241, 242, - 0, 243, 0, 1077, 1078, 246, 247, 0, 248, 249, - 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, - 0, 260, 261, 262, 263, 264, 265, 266, 0, 267, - 268, 269, 270, 271, 272, 273, 274, 1079, 1080, 0, - 1081, 0, 278, 279, 280, 281, 282, 283, 284, 285, - 286, 287, 288, 0, 0, 289, 290, 291, 292, 0, - 293, 294, 295, 296, 297, 298, 299, 300, 1082, 302, - 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, - 313, 314, 315, 316, 317, 318, 319, 320, 321, 1083, - 323, 1084, 325, 326, 327, 328, 1085, 329, 330, 331, - 332, 1086, 795, 334, 1087, 336, 337, 338, 0, 339, - 340, 0, 0, 1088, 342, 343, 0, 0, 344, 345, - 346, 347, 348, 349, 797, 351, 352, 353, 354, 355, - 356, 357, 358, 359, 360, 361, 0, 0, 0, 0, - 362, 363, 798, 365, 366, 367, 368, 369, 370, 371, - 0, 372, 373, 374, 375, 376, 377, 0, 378, 379, - 380, 381, 382, 1089, 384, 385, 386, 387, 0, 388, - 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, - 399, 400, 0, 401, 402, 403, 404, 405, 406, 1090, - 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, - 418, 419, 420, 0, 0, 421, 422, 423, 424, 425, - 426, 427, 428, 429, 0, 430, 431, 432, 1091, 434, - 0, 435, 436, 437, 438, 439, 440, 441, 442, 443, - 444, 445, 446, 447, 448, 800, 0, 0, 450, 451, - 0, 452, 453, 454, 455, 456, 457, 458, 0, 459, - 1092, 1093, 0, 0, 462, 463, 801, 465, 802, 1094, - 467, 468, 803, 470, 471, 472, 473, 474, 0, 0, - 475, 476, 477, 0, 478, 479, 480, 481, 0, 482, - 483, 484, 485, 486, 487, 1095, 489, 0, 490, 491, - 492, 493, 494, 495, 496, 497, 498, 0, 0, 499, - 0, 0, 500, 501, 502, 503, 504, 505, 506, 507, - 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, - 518, 519, 520, 1096, 0, 0, 0, 0, 0, 0, - 1097, 1098, 1099, 0, 0, 0, 0, 1100, 0, 1101, - 0, 0, 0, 0, 0, 1102, 1103, 1104, 1105, 117, - 1056, 821, 1057, 1058, 1059, 1060, 1061, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 118, 119, - 120, 121, 122, 123, 124, 125, 0, 126, 127, 128, - 0, 0, 0, 0, 0, 1062, 0, 0, 129, 130, - 131, 0, 132, 133, 134, 135, 136, 137, 138, 139, - 1063, 141, 1064, 1065, 0, 144, 145, 146, 147, 148, - 149, 1066, 790, 150, 151, 152, 153, 1067, 1068, 156, - 0, 157, 158, 159, 160, 791, 0, 792, 0, 1069, - 164, 165, 166, 167, 168, 169, 170, 171, 172, 0, - 173, 174, 175, 176, 177, 178, 0, 179, 180, 181, - 182, 183, 184, 185, 186, 187, 188, 189, 1070, 191, - 192, 1071, 194, 1072, 195, 0, 196, 197, 198, 199, - 200, 201, 0, 0, 202, 203, 204, 205, 0, 0, - 206, 207, 1073, 209, 210, 0, 211, 212, 213, 0, - 214, 215, 216, 0, 217, 218, 219, 220, 1074, 222, - 223, 224, 225, 226, 227, 793, 1075, 229, 0, 230, - 231, 1076, 233, 0, 234, 0, 235, 236, 0, 237, - 238, 239, 240, 241, 242, 0, 243, 0, 1077, 1078, - 246, 247, 0, 248, 249, 250, 251, 252, 253, 254, - 255, 256, 257, 258, 259, 0, 260, 261, 262, 263, - 264, 265, 266, 0, 267, 268, 269, 270, 271, 272, - 273, 274, 1079, 1080, 0, 1081, 0, 278, 279, 280, - 281, 282, 283, 284, 285, 286, 287, 288, 0, 0, - 289, 290, 291, 292, 0, 293, 294, 295, 296, 297, - 298, 299, 300, 1082, 302, 303, 304, 305, 306, 307, - 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, - 318, 319, 320, 321, 1083, 323, 1084, 325, 326, 327, - 328, 1085, 329, 330, 331, 332, 1086, 795, 334, 1087, - 336, 337, 338, 0, 339, 340, 0, 0, 1088, 342, - 343, 0, 0, 344, 345, 346, 347, 348, 349, 797, - 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, - 361, 0, 0, 0, 0, 362, 363, 798, 365, 366, - 367, 368, 369, 370, 371, 0, 372, 373, 374, 375, - 376, 377, 0, 378, 379, 380, 381, 382, 1089, 384, - 385, 386, 387, 0, 388, 389, 390, 391, 392, 393, - 394, 395, 396, 397, 398, 399, 400, 0, 401, 402, - 403, 404, 405, 406, 1090, 408, 409, 410, 411, 412, - 413, 414, 415, 416, 417, 418, 419, 420, 0, 0, - 421, 422, 423, 424, 425, 426, 427, 428, 429, 0, - 430, 431, 432, 1091, 434, 0, 435, 436, 437, 438, - 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, - 800, 0, 0, 450, 451, 0, 452, 453, 454, 455, - 456, 457, 458, 0, 459, 1092, 1093, 0, 0, 462, - 463, 801, 465, 802, 1094, 467, 468, 803, 470, 471, - 472, 473, 474, 0, 0, 475, 476, 477, 0, 478, - 479, 480, 481, 0, 482, 483, 484, 485, 486, 487, - 1095, 489, 0, 490, 491, 492, 493, 494, 495, 496, - 497, 498, 0, 0, 499, 0, 0, 500, 501, 502, - 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, - 513, 514, 515, 516, 517, 518, 519, 520, 1096, 0, - 0, 0, 0, 0, 0, 1736, 1737, 1099, 0, 0, - 0, 0, 1100, 0, 1101, 0, 0, 0, 0, 0, - 1102, 1103, 1104, 1105, 117, 2234, 821, 1057, 1058, 1059, - 1060, 1061, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 118, 119, 120, 121, 122, 123, 124, - 125, 0, 126, 127, 128, 0, 0, 0, 0, 0, - 1062, 0, 0, 129, 130, 131, 0, 132, 133, 134, - 135, 136, 137, 138, 139, 1063, 141, 1064, 1065, 0, - 144, 145, 146, 147, 148, 149, 1066, 790, 150, 151, - 152, 153, 1067, 1068, 156, 0, 157, 158, 159, 160, - 791, 0, 792, 0, 1069, 164, 165, 166, 167, 168, - 169, 170, 171, 172, 0, 173, 174, 175, 176, 177, - 178, 0, 179, 180, 181, 182, 183, 184, 185, 186, - 187, 188, 189, 1070, 191, 192, 1071, 194, 1072, 195, - 0, 196, 197, 198, 199, 200, 201, 0, 0, 202, - 203, 204, 205, 0, 0, 206, 207, 1073, 209, 210, - 0, 211, 212, 213, 0, 214, 215, 216, 0, 217, - 218, 219, 220, 1074, 222, 223, 224, 225, 226, 227, - 793, 1075, 229, 0, 230, 231, 1076, 233, 0, 234, - 0, 235, 236, 0, 237, 238, 239, 240, 241, 242, - 0, 243, 0, 1077, 1078, 246, 247, 0, 248, 249, - 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, - 0, 260, 261, 262, 263, 264, 265, 266, 0, 267, - 268, 269, 270, 271, 272, 273, 274, 1079, 1080, 0, - 1081, 0, 278, 279, 280, 281, 282, 283, 284, 285, - 286, 287, 288, 0, 0, 289, 290, 291, 292, 0, - 293, 294, 295, 296, 297, 298, 299, 300, 1082, 302, - 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, - 313, 314, 315, 316, 317, 318, 319, 320, 321, 1083, - 323, 1084, 325, 326, 327, 328, 1085, 329, 330, 331, - 332, 1086, 795, 334, 1087, 336, 337, 338, 0, 339, - 340, 0, 0, 1088, 342, 343, 0, 0, 344, 345, - 346, 347, 348, 349, 797, 351, 352, 353, 354, 355, - 356, 357, 358, 359, 360, 361, 0, 0, 0, 0, - 362, 363, 798, 365, 366, 367, 368, 369, 370, 371, - 0, 372, 373, 374, 375, 376, 377, 0, 378, 379, - 380, 381, 382, 1089, 384, 385, 386, 387, 0, 388, - 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, - 399, 400, 0, 401, 402, 403, 404, 405, 406, 1090, - 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, - 418, 419, 420, 0, 0, 421, 422, 423, 424, 425, - 426, 427, 428, 429, 0, 430, 431, 432, 1091, 434, - 0, 435, 436, 437, 438, 439, 440, 441, 442, 443, - 444, 445, 446, 447, 448, 800, 0, 0, 450, 451, - 0, 452, 453, 454, 455, 456, 457, 458, 0, 459, - 1092, 1093, 0, 0, 462, 463, 801, 465, 802, 1094, - 467, 468, 803, 470, 471, 472, 473, 474, 0, 0, - 475, 476, 477, 0, 478, 479, 480, 481, 0, 482, - 483, 484, 485, 486, 487, 1095, 489, 0, 490, 491, - 492, 493, 494, 495, 496, 497, 498, 0, 0, 499, - 0, 0, 500, 501, 502, 503, 504, 505, 506, 507, - 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, - 518, 519, 520, 1096, 0, 0, 0, 0, 0, 0, - 1097, 1098, 1099, 0, 0, 0, 0, 1100, 0, 1101, - 0, 0, 0, 0, 0, 1102, 1103, 1104, 1105, 117, - 1056, 821, 1057, 1058, 1059, 1060, 1061, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 118, 119, - 120, 121, 122, 123, 124, 125, 0, 126, 127, 128, - 0, 0, 0, 0, 0, 1062, 0, 0, 129, 130, - 131, 0, 132, 133, 134, 135, 136, 137, 138, 139, - 1063, 141, 1064, 1065, 0, 144, 145, 146, 147, 148, - 149, 1066, 790, 150, 151, 152, 153, 1067, 1068, 156, - 0, 157, 158, 159, 160, 791, 0, 792, 0, 1069, - 164, 165, 166, 167, 168, 169, 170, 171, 172, 0, - 173, 174, 175, 176, 177, 178, 0, 179, 180, 181, - 182, 183, 184, 185, 186, 187, 188, 189, 1070, 191, - 192, 1071, 194, 1072, 195, 0, 196, 197, 198, 199, - 200, 201, 0, 0, 202, 203, 204, 205, 0, 0, - 206, 207, 1073, 209, 210, 0, 211, 212, 213, 0, - 214, 215, 216, 0, 217, 218, 219, 220, 1074, 222, - 223, 224, 225, 226, 227, 793, 1075, 229, 0, 230, - 231, 1076, 233, 0, 234, 0, 235, 236, 0, 237, - 238, 239, 240, 241, 242, 0, 243, 0, 1077, 1078, - 246, 247, 0, 248, 249, 250, 251, 252, 253, 254, - 255, 256, 257, 258, 259, 0, 260, 261, 262, 263, - 264, 265, 266, 0, 267, 268, 269, 270, 271, 272, - 273, 274, 1079, 1080, 0, 1081, 0, 278, 279, 280, - 281, 282, 283, 284, 285, 286, 287, 288, 0, 0, - 289, 290, 291, 292, 0, 293, 294, 295, 296, 297, - 298, 299, 300, 1082, 302, 303, 304, 305, 306, 307, - 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, - 318, 319, 320, 321, 1083, 323, 1084, 325, 326, 327, - 328, 1085, 329, 330, 331, 332, 1086, 795, 334, 1087, - 336, 337, 338, 0, 339, 340, 0, 0, 1088, 342, - 343, 0, 0, 344, 345, 346, 347, 348, 349, 797, - 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, - 361, 0, 0, 0, 0, 362, 363, 798, 365, 366, - 367, 368, 369, 370, 371, 0, 372, 373, 374, 375, - 376, 377, 0, 378, 379, 380, 381, 382, 1089, 384, - 385, 386, 387, 0, 388, 389, 390, 391, 392, 393, - 394, 395, 396, 397, 398, 399, 400, 0, 401, 402, - 403, 404, 405, 406, 1090, 408, 409, 410, 411, 412, - 413, 414, 415, 416, 417, 418, 419, 420, 0, 0, - 421, 422, 423, 424, 425, 426, 427, 428, 429, 0, - 430, 431, 432, 1091, 434, 0, 435, 436, 437, 438, - 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, - 800, 0, 0, 450, 451, 0, 452, 453, 454, 455, - 456, 457, 458, 0, 459, 1092, 1093, 0, 0, 462, - 463, 801, 465, 802, 1094, 467, 468, 803, 470, 471, - 472, 473, 474, 0, 0, 475, 476, 477, 0, 478, - 479, 480, 481, 0, 482, 483, 484, 485, 486, 487, - 1095, 489, 0, 490, 491, 492, 493, 494, 495, 496, - 497, 498, 0, 0, 499, 0, 0, 500, 501, 502, - 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, - 513, 514, 515, 516, 517, 518, 519, 520, 1096, 0, - 0, 0, 0, 0, 0, 1097, 2321, 1099, 0, 0, - 0, 0, 1100, 0, 1101, 0, 0, 0, 0, 0, - 1102, 1103, 1104, 1105, 117, 1056, 821, 1057, 1058, 1059, - 1060, 1061, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 118, 119, 120, 121, 122, 123, 124, - 125, 0, 126, 127, 128, 0, 0, 0, 0, 0, - 1062, 0, 0, 129, 130, 131, 0, 132, 133, 134, - 135, 136, 137, 138, 139, 1063, 141, 1064, 1065, 0, - 144, 145, 146, 147, 148, 149, 1066, 790, 150, 151, - 152, 153, 1067, 1068, 156, 0, 157, 158, 159, 160, - 791, 0, 792, 0, 1069, 164, 165, 166, 167, 168, - 169, 170, 171, 172, 0, 173, 174, 175, 176, 177, - 178, 0, 179, 180, 181, 182, 183, 184, 185, 186, - 187, 188, 189, 1070, 191, 192, 1071, 194, 1072, 195, - 0, 196, 197, 198, 199, 200, 201, 0, 0, 202, - 203, 204, 205, 0, 0, 206, 207, 1073, 209, 210, - 0, 211, 212, 213, 0, 214, 215, 216, 0, 217, - 218, 219, 220, 1074, 222, 223, 224, 225, 226, 227, - 793, 1075, 229, 0, 230, 231, 1076, 233, 0, 234, - 0, 235, 236, 0, 237, 238, 239, 240, 241, 242, - 0, 243, 0, 1077, 1078, 246, 247, 0, 248, 249, - 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, - 0, 260, 261, 262, 263, 264, 265, 266, 0, 267, - 268, 269, 270, 271, 272, 273, 274, 1079, 1080, 0, - 1081, 0, 278, 279, 280, 281, 282, 283, 284, 285, - 286, 287, 288, 0, 0, 289, 290, 291, 292, 0, - 293, 294, 295, 296, 297, 298, 299, 300, 1082, 302, - 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, - 313, 314, 315, 316, 317, 318, 319, 320, 321, 1083, - 323, 1084, 325, 326, 327, 328, 1085, 329, 330, 331, - 332, 1086, 795, 334, 1087, 336, 337, 338, 0, 339, - 340, 0, 0, 1088, 342, 343, 0, 0, 344, 345, - 346, 347, 348, 349, 797, 351, 352, 353, 354, 355, - 356, 357, 358, 359, 360, 361, 0, 0, 0, 0, - 362, 363, 798, 365, 366, 367, 368, 369, 370, 371, - 0, 372, 373, 374, 375, 376, 377, 0, 378, 379, - 380, 381, 382, 1089, 384, 385, 386, 387, 0, 388, - 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, - 399, 400, 0, 401, 402, 403, 404, 405, 406, 1090, - 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, - 418, 419, 420, 0, 0, 421, 422, 423, 424, 425, - 426, 427, 428, 429, 0, 430, 431, 432, 1091, 434, - 0, 435, 436, 437, 438, 439, 440, 441, 442, 443, - 444, 445, 446, 447, 448, 800, 0, 0, 450, 451, - 0, 452, 453, 454, 455, 456, 457, 458, 0, 459, - 1092, 1093, 0, 0, 462, 463, 801, 465, 802, 1094, - 467, 468, 803, 470, 471, 472, 473, 474, 0, 0, - 475, 476, 477, 0, 478, 479, 480, 481, 0, 482, - 483, 484, 485, 486, 487, 1095, 489, 0, 490, 491, - 492, 493, 494, 495, 496, 497, 498, 0, 0, 499, - 0, 0, 500, 501, 502, 503, 504, 505, 506, 507, - 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, - 518, 519, 520, 1096, 0, 0, 0, 0, 0, 0, - 1097, 1098, 1099, 0, 0, 0, 0, 1100, 0, 2542, - 0, 0, 0, 0, 0, 1102, 1103, 1104, 1105, 117, - 1056, 821, 1057, 1058, 1059, 1060, 1061, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 118, 119, - 120, 121, 122, 123, 124, 125, 0, 126, 127, 128, - 0, 0, 0, 0, 0, 1062, 0, 0, 129, 130, - 131, 0, 132, 133, 134, 135, 136, 137, 138, 139, - 1063, 141, 1064, 1065, 0, 144, 145, 146, 147, 148, - 149, 1066, 790, 150, 151, 152, 153, 1067, 1068, 156, - 0, 157, 158, 159, 160, 791, 0, 792, 0, 1069, - 164, 165, 166, 167, 168, 169, 170, 171, 172, 0, - 173, 174, 175, 176, 177, 178, 0, 179, 180, 181, - 182, 183, 184, 185, 186, 187, 188, 189, 1070, 191, - 192, 1071, 194, 1072, 195, 0, 196, 197, 198, 199, - 200, 201, 0, 0, 202, 203, 204, 205, 0, 0, - 206, 207, 1073, 209, 210, 0, 211, 212, 213, 0, - 214, 215, 216, 0, 217, 218, 219, 220, 1074, 222, - 223, 224, 225, 226, 227, 793, 1075, 229, 0, 230, - 231, 1076, 233, 0, 234, 0, 235, 236, 0, 237, - 238, 239, 240, 241, 242, 0, 243, 0, 1077, 1078, - 246, 247, 0, 248, 249, 250, 251, 252, 253, 254, - 255, 256, 257, 258, 259, 0, 260, 261, 262, 263, - 264, 265, 266, 0, 267, 268, 269, 270, 271, 272, - 273, 274, 1079, 1080, 0, 1081, 0, 278, 279, 280, - 281, 282, 283, 284, 285, 286, 287, 288, 0, 0, - 289, 290, 291, 292, 0, 293, 294, 295, 296, 297, - 298, 299, 300, 1082, 302, 303, 304, 305, 306, 307, - 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, - 318, 319, 320, 321, 1083, 323, 1084, 325, 326, 327, - 328, 1085, 329, 330, 331, 332, 1086, 795, 334, 1087, - 336, 337, 338, 0, 339, 340, 0, 0, 1088, 342, - 343, 0, 0, 344, 345, 346, 347, 348, 349, 797, - 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, - 361, 0, 0, 0, 0, 362, 363, 798, 365, 366, - 367, 368, 369, 370, 371, 0, 372, 373, 374, 375, - 376, 377, 0, 378, 379, 380, 381, 382, 1089, 384, - 385, 386, 387, 0, 388, 389, 390, 391, 392, 393, - 394, 395, 396, 397, 398, 399, 400, 0, 401, 402, - 403, 404, 405, 406, 1090, 408, 409, 410, 411, 412, - 413, 414, 415, 416, 417, 418, 419, 420, 0, 0, - 421, 422, 423, 424, 425, 426, 427, 428, 429, 0, - 430, 431, 432, 1091, 434, 0, 435, 436, 437, 438, - 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, - 800, 0, 0, 450, 451, 0, 452, 453, 454, 455, - 456, 457, 458, 0, 459, 1092, 1093, 0, 0, 462, - 463, 801, 465, 802, 1094, 467, 468, 803, 470, 471, - 472, 473, 474, 0, 0, 475, 476, 477, 0, 478, - 479, 480, 481, 0, 482, 483, 484, 485, 486, 487, - 1095, 489, 0, 490, 491, 492, 493, 494, 495, 496, - 497, 498, 0, 0, 499, 0, 0, 500, 501, 502, - 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, - 513, 514, 515, 516, 517, 518, 519, 520, 1096, 0, - 0, 0, 0, 0, 0, 1097, 3154, 1099, 0, 0, - 0, 0, 1100, 0, 1101, 0, 0, 0, 0, 0, - 1102, 1103, 1104, 1105, 117, 1056, 821, 1057, 1058, 1059, - 1060, 1061, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 118, 119, 120, 121, 122, 123, 124, - 125, 0, 126, 127, 128, 0, 0, 0, 0, 0, - 1062, 0, 0, 129, 130, 131, 0, 132, 133, 134, - 135, 136, 137, 138, 139, 1063, 141, 1064, 1065, 0, - 144, 145, 146, 147, 148, 149, 1066, 790, 150, 151, - 152, 153, 1067, 1068, 156, 0, 157, 158, 159, 160, - 791, 0, 792, 0, 1069, 164, 165, 166, 167, 168, - 169, 170, 171, 172, 0, 173, 174, 175, 176, 177, - 178, 0, 179, 180, 3094, 182, 183, 184, 185, 186, - 187, 188, 189, 1070, 191, 192, 1071, 194, 1072, 195, - 0, 196, 197, 198, 199, 200, 201, 0, 0, 202, - 203, 204, 205, 0, 0, 206, 207, 1073, 209, 210, - 0, 211, 212, 213, 0, 214, 215, 216, 0, 217, - 218, 219, 220, 1074, 222, 223, 224, 225, 226, 227, - 793, 1075, 229, 0, 230, 231, 1076, 233, 0, 234, - 0, 235, 236, 0, 237, 238, 239, 240, 241, 242, - 0, 243, 0, 3095, 1078, 246, 247, 0, 248, 249, - 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, - 0, 260, 261, 262, 263, 264, 265, 266, 0, 267, - 268, 269, 270, 271, 272, 273, 274, 1079, 1080, 0, - 1081, 0, 278, 279, 280, 281, 282, 283, 284, 285, - 286, 287, 288, 0, 0, 289, 290, 291, 292, 0, - 293, 294, 295, 296, 297, 298, 299, 300, 1082, 302, - 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, - 313, 314, 315, 316, 317, 318, 319, 320, 321, 1083, - 323, 1084, 325, 326, 327, 328, 1085, 329, 330, 331, - 332, 1086, 795, 334, 1087, 336, 337, 338, 0, 339, - 340, 0, 0, 1088, 342, 343, 0, 0, 344, 345, - 346, 347, 348, 349, 797, 351, 352, 353, 354, 355, - 356, 357, 358, 359, 360, 361, 0, 0, 0, 0, - 362, 363, 798, 365, 366, 367, 368, 369, 370, 371, - 0, 372, 373, 374, 375, 376, 377, 0, 378, 379, - 380, 381, 382, 1089, 384, 385, 386, 387, 0, 388, - 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, - 399, 400, 0, 401, 402, 403, 404, 405, 3096, 1090, - 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, - 418, 419, 420, 0, 0, 421, 422, 423, 424, 425, - 426, 427, 428, 429, 0, 430, 431, 432, 1091, 434, - 0, 435, 436, 437, 438, 439, 440, 441, 442, 443, - 444, 445, 446, 447, 448, 800, 0, 0, 450, 451, - 0, 452, 453, 454, 455, 456, 457, 458, 0, 459, - 1092, 1093, 0, 0, 462, 463, 801, 465, 802, 1094, - 467, 468, 803, 470, 471, 472, 473, 474, 0, 0, - 475, 476, 477, 0, 478, 479, 480, 481, 0, 482, - 483, 484, 485, 486, 487, 1095, 489, 0, 490, 491, - 492, 493, 494, 495, 496, 497, 498, 0, 0, 499, - 0, 0, 500, 501, 502, 503, 504, 505, 506, 507, - 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, - 518, 519, 520, 1096, 0, 0, 0, 0, 0, 0, - 1097, 1098, 1099, 0, 0, 0, 0, 1100, 0, 3097, - 0, 0, 0, 0, 0, 1102, 1103, 1104, 1105, 117, - 1056, 821, 1057, 1058, 1059, 1060, 1061, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 118, 119, - 120, 121, 122, 123, 124, 125, 0, 126, 127, 128, - 0, 0, 0, 0, 0, 1062, 0, 0, 129, 130, - 131, 0, 132, 133, 134, 135, 136, 137, 138, 3562, - 1063, 141, 1064, 1065, 0, 144, 145, 146, 147, 148, - 149, 1066, 790, 150, 151, 152, 153, 1067, 1068, 156, - 0, 157, 158, 159, 160, 791, 0, 792, 0, 1069, - 164, 165, 166, 167, 168, 169, 170, 171, 172, 0, - 173, 174, 175, 176, 177, 178, 0, 179, 180, 181, - 3563, 183, 184, 185, 186, 187, 188, 189, 1070, 191, - 192, 1071, 194, 1072, 195, 0, 196, 197, 198, 199, - 200, 201, 0, 0, 202, 203, 204, 205, 0, 0, - 206, 207, 1073, 209, 210, 0, 211, 212, 213, 0, - 214, 215, 216, 0, 217, 218, 219, 220, 1074, 222, - 223, 224, 225, 226, 227, 793, 1075, 229, 0, 230, - 231, 1076, 233, 0, 234, 0, 235, 236, 0, 237, - 238, 239, 240, 241, 242, 0, 243, 0, 1077, 1078, - 246, 247, 0, 248, 249, 250, 251, 252, 253, 254, - 255, 256, 257, 258, 259, 0, 260, 261, 262, 263, - 264, 265, 266, 0, 267, 268, 269, 270, 271, 272, - 273, 274, 1079, 1080, 0, 1081, 0, 278, 279, 280, - 281, 282, 283, 284, 285, 286, 287, 288, 0, 0, - 289, 290, 291, 292, 0, 293, 294, 295, 296, 297, - 298, 299, 300, 1082, 302, 303, 304, 305, 306, 307, - 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, - 318, 319, 320, 321, 1083, 323, 1084, 325, 326, 327, - 328, 1085, 329, 330, 331, 332, 1086, 795, 334, 1087, - 336, 337, 338, 0, 339, 340, 0, 0, 1088, 342, - 343, 0, 0, 344, 345, 346, 347, 348, 349, 797, - 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, - 361, 0, 0, 0, 0, 362, 363, 798, 365, 366, - 367, 368, 369, 370, 371, 0, 372, 373, 374, 375, - 376, 377, 0, 378, 379, 380, 381, 382, 1089, 384, - 385, 386, 387, 0, 388, 389, 390, 391, 392, 393, - 394, 395, 396, 397, 398, 399, 400, 0, 401, 402, - 403, 404, 405, 406, 1090, 408, 409, 410, 411, 412, - 413, 414, 415, 416, 417, 418, 419, 420, 0, 0, - 421, 422, 423, 424, 425, 426, 427, 428, 429, 0, - 430, 431, 432, 1091, 434, 0, 435, 436, 437, 438, - 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, - 800, 0, 0, 450, 451, 0, 452, 453, 454, 455, - 456, 457, 458, 0, 459, 1092, 1093, 0, 0, 462, - 463, 801, 465, 802, 1094, 467, 468, 803, 470, 471, - 3564, 473, 474, 0, 0, 475, 476, 477, 0, 478, - 479, 480, 481, 0, 482, 483, 484, 485, 486, 487, - 1095, 489, 0, 490, 491, 492, 493, 494, 495, 496, - 497, 498, 0, 0, 499, 0, 0, 500, 501, 502, - 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, - 513, 514, 515, 516, 517, 518, 519, 520, 1096, 0, - 0, 0, 0, 0, 0, 1097, 1098, 1099, 0, 0, - 0, 0, 1100, 0, 1101, 0, 0, 0, 0, 0, - 1102, 1103, 1104, 1105, 117, 1056, 821, 1057, 1058, 1059, - 1060, 1061, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 118, 119, 120, 121, 122, 123, 124, - 125, 0, 126, 127, 128, 0, 0, 0, 0, 0, - 1062, 0, 0, 129, 130, 131, 0, 132, 133, 134, - 135, 136, 137, 138, 139, 1063, 141, 1064, 1065, 0, - 144, 145, 146, 147, 148, 149, 1066, 790, 150, 151, - 152, 153, 1067, 1068, 156, 0, 157, 158, 159, 160, - 791, 0, 792, 0, 1069, 164, 165, 166, 167, 168, - 169, 170, 171, 172, 0, 173, 174, 175, 176, 177, - 178, 0, 179, 180, 181, 3563, 183, 184, 185, 186, - 187, 188, 189, 1070, 191, 192, 1071, 194, 1072, 195, - 0, 196, 197, 198, 199, 200, 201, 0, 0, 202, - 203, 204, 205, 0, 0, 206, 207, 1073, 209, 210, - 0, 211, 212, 213, 0, 214, 215, 216, 0, 217, - 218, 219, 220, 1074, 222, 223, 224, 225, 226, 227, - 793, 1075, 229, 0, 230, 231, 1076, 233, 0, 234, - 0, 235, 236, 0, 237, 238, 239, 240, 241, 242, - 0, 243, 0, 1077, 1078, 246, 247, 0, 248, 249, - 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, - 0, 260, 261, 262, 263, 264, 265, 266, 0, 267, - 268, 269, 270, 271, 272, 273, 274, 1079, 1080, 0, - 1081, 0, 278, 279, 280, 281, 282, 283, 284, 285, - 286, 287, 288, 0, 0, 289, 290, 291, 292, 0, - 293, 294, 295, 296, 297, 298, 299, 300, 1082, 302, - 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, - 313, 314, 315, 316, 317, 318, 319, 320, 321, 1083, - 323, 1084, 325, 326, 327, 328, 1085, 329, 330, 331, - 332, 1086, 795, 334, 1087, 336, 337, 338, 0, 339, - 340, 0, 0, 1088, 342, 343, 0, 0, 344, 345, - 346, 347, 348, 349, 797, 351, 352, 353, 354, 355, - 356, 357, 358, 359, 360, 361, 0, 0, 0, 0, - 362, 363, 798, 365, 366, 367, 368, 369, 370, 371, - 0, 372, 373, 374, 375, 376, 377, 0, 378, 379, - 380, 381, 382, 1089, 384, 385, 386, 387, 0, 388, - 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, - 399, 400, 0, 401, 402, 403, 404, 405, 406, 1090, - 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, - 418, 419, 420, 0, 0, 421, 422, 423, 424, 425, - 426, 427, 428, 429, 0, 430, 431, 432, 1091, 434, - 0, 435, 436, 437, 438, 439, 440, 441, 442, 443, - 444, 445, 446, 447, 448, 800, 0, 0, 450, 451, - 0, 452, 453, 454, 455, 456, 457, 458, 0, 459, - 1092, 1093, 0, 0, 462, 463, 801, 465, 802, 1094, - 467, 468, 803, 470, 471, 3564, 473, 474, 0, 0, - 475, 476, 477, 0, 478, 479, 480, 481, 0, 482, - 483, 484, 485, 486, 487, 1095, 489, 0, 490, 491, - 492, 493, 494, 495, 496, 497, 498, 0, 0, 499, - 0, 0, 500, 501, 502, 503, 504, 505, 506, 507, - 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, - 518, 519, 520, 1096, 0, 0, 0, 0, 0, 0, - 1097, 1098, 1099, 0, 0, 0, 0, 1100, 0, 1101, - 0, 0, 0, 0, 0, 1102, 1103, 1104, 1105, 117, - 1056, 821, 1057, 1058, 1059, 1060, 1061, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 118, 119, - 120, 121, 122, 123, 124, 125, 0, 126, 127, 128, - 0, 0, 0, 0, 0, 1062, 0, 0, 129, 130, - 131, 0, 132, 133, 134, 135, 136, 137, 138, 139, - 1063, 141, 1064, 1065, 0, 144, 145, 146, 147, 148, - 149, 1066, 790, 150, 151, 152, 153, 1067, 1068, 156, - 0, 157, 158, 159, 160, 791, 0, 792, 0, 163, - 164, 165, 166, 167, 168, 169, 170, 171, 172, 0, - 173, 174, 175, 176, 177, 178, 0, 179, 180, 181, - 182, 183, 184, 185, 186, 187, 188, 189, 1070, 191, - 192, 1071, 194, 0, 195, 0, 196, 197, 198, 199, - 200, 201, 0, 0, 202, 203, 204, 205, 0, 0, - 206, 207, 1073, 209, 210, 0, 211, 212, 213, 0, - 214, 215, 216, 0, 217, 218, 219, 220, 1074, 222, - 223, 224, 225, 226, 227, 793, 1075, 229, 0, 230, - 231, 1076, 233, 0, 234, 0, 235, 236, 0, 237, - 238, 239, 240, 241, 242, 0, 243, 0, 1077, 1078, - 246, 247, 0, 248, 249, 250, 251, 252, 253, 254, - 255, 256, 257, 258, 259, 0, 260, 261, 262, 263, - 264, 265, 266, 0, 267, 268, 269, 270, 271, 272, - 273, 274, 1079, 1080, 0, 1081, 0, 278, 279, 280, - 281, 282, 283, 284, 285, 286, 287, 288, 0, 0, - 289, 290, 291, 292, 0, 293, 294, 295, 296, 297, - 298, 299, 300, 1082, 302, 303, 304, 305, 306, 307, - 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, - 318, 319, 320, 321, 1083, 323, 1084, 325, 326, 327, - 328, 0, 329, 330, 331, 332, 1086, 795, 334, 1087, - 336, 337, 338, 0, 339, 340, 0, 0, 1088, 342, - 343, 0, 0, 344, 345, 346, 347, 348, 349, 797, - 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, - 361, 0, 0, 0, 0, 362, 363, 798, 365, 366, - 367, 368, 369, 370, 371, 0, 372, 373, 374, 375, - 376, 377, 0, 378, 379, 380, 381, 382, 1089, 384, - 385, 386, 387, 0, 388, 389, 390, 391, 392, 393, - 394, 395, 396, 397, 398, 399, 400, 0, 401, 402, - 403, 404, 405, 406, 1090, 408, 409, 410, 411, 412, - 413, 414, 415, 416, 417, 418, 419, 420, 0, 0, - 421, 422, 423, 424, 425, 426, 427, 428, 429, 0, - 430, 431, 432, 1091, 434, 0, 435, 436, 437, 438, - 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, - 800, 0, 0, 450, 451, 0, 452, 453, 454, 455, - 456, 457, 458, 0, 459, 1092, 1093, 0, 0, 462, - 463, 801, 465, 802, 1094, 467, 468, 803, 470, 471, - 472, 473, 474, 0, 0, 475, 476, 477, 0, 478, - 479, 480, 481, 0, 482, 483, 484, 485, 486, 487, - 1095, 489, 0, 490, 491, 492, 493, 494, 495, 496, - 497, 498, 0, 0, 499, 0, 0, 500, 501, 502, - 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, - 513, 514, 515, 516, 517, 518, 519, 520, 0, 0, - 0, 0, 0, 0, 0, 1434, 1435, 0, 0, 0, - 0, 0, 1100, 0, 1101, 0, 0, 0, 0, 0, - 1102, 1103, 1104, 1105, 117, 1056, 821, 1057, 1058, 1059, - 1060, 1061, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 118, 119, 120, 121, 122, 123, 124, - 125, 0, 126, 127, 128, 0, 0, 0, 0, 0, - 1062, 0, 0, 129, 130, 131, 0, 132, 133, 134, - 135, 136, 137, 138, -2101, 1063, 141, 1064, 1065, 0, - 144, 145, 146, 147, 148, 149, 1066, 790, 150, 151, - 152, 153, 1067, 1068, 156, 0, 157, 158, 159, 160, - 791, 0, 792, 0, 1069, 164, 165, 166, 167, 168, - 169, 170, 171, 172, 0, 173, 174, 175, 176, 177, - 178, 0, 179, 180, 181, 3563, 183, 184, 185, 186, - 187, 188, 189, 1070, 191, 192, 1071, 194, 1072, 195, - 0, 196, 197, 198, 199, 200, 201, 0, 0, 202, - 203, 204, 205, 0, 0, 206, 207, 1073, 209, 210, - 0, 211, 212, 213, 0, 214, 215, 216, 0, 217, - 218, 219, 220, 1074, 222, 223, 224, 225, 226, 227, - 793, 1075, 229, 0, 230, 231, 1076, 233, 0, 234, - 0, 235, 236, 0, 237, 238, 239, 240, -2101, 242, - 0, 243, 0, 1077, 1078, 246, 247, 0, 248, 249, - 250, 251, 252, 253, 254, -2101, 256, 257, 258, 259, - 0, 260, 261, 262, 263, 264, 265, 266, 0, 267, - 268, 269, 270, 271, 272, 273, 274, 1079, 1080, 0, - 1081, 0, 278, 0, 0, 281, 282, 283, 284, 285, - 286, 287, 288, 0, 0, 289, 290, 291, -2101, 0, - 293, 294, 295, 296, 297, 298, 299, 300, 1082, 302, - 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, - 313, 314, 315, 316, 317, 318, 319, 320, 321, 1083, - 323, 1084, 325, 326, 327, 328, 0, 329, 330, 0, - 332, 1086, 795, 334, 1087, 336, 337, 338, 0, 339, - 340, 0, 0, 1088, 342, 343, 0, 0, 344, 345, - 346, 347, 348, 349, 797, 351, 352, 353, 354, 355, - 356, 357, 358, 359, 360, 361, 0, 0, 0, 0, - 362, 363, 798, 365, 366, 367, 368, 369, 370, 371, - 0, 372, 373, 374, 375, 376, 377, 0, 378, 379, - 380, 381, 382, 1089, 384, 385, 386, 387, 0, 388, - 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, - 399, 400, 0, 401, 402, 403, 404, 405, 406, 1090, - 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, - 418, 419, 420, 0, 0, 421, 422, 423, 424, 425, - 426, 427, 428, 429, 0, -2101, 431, 432, 1091, 434, - 0, 435, 436, 437, 438, 439, 440, 441, 442, 443, - 444, 445, 446, 447, 448, 800, 0, 0, 450, 451, - 0, 452, 453, 454, 455, 456, 457, 458, 0, 459, - 1092, 1093, 0, 0, 462, 463, 801, 465, 802, 1094, - 467, 468, 803, 470, 471, 3564, 473, 474, 0, 0, - 475, 476, 477, 0, 478, 479, 480, 481, 0, 482, - 483, 484, 485, 486, 487, 1095, 489, 0, 490, 491, - 492, 493, 494, 495, 496, 497, 498, 0, 0, 499, - 0, 0, 500, 501, 502, 503, 504, 505, 506, 507, - 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, - 518, 519, 520, -2101, 0, 0, 0, 0, 0, 0, - 1097, 1098, 1099, 0, 0, 0, 0, 1100, 0, 1101, - 0, 0, 0, 0, 0, 1102, 1103, 1104, 1105, 117, - 1056, 821, 1057, 1058, 0, 1060, 1061, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 118, 119, - 120, 121, 122, 123, 124, 125, 0, 126, 127, 128, - 0, 0, 0, 0, 0, 1062, 0, 0, 129, 130, - 131, 0, 132, 133, 134, 135, 136, 137, 138, 139, - 1063, 141, 1064, 1065, 0, 144, 145, 146, 147, 148, - 149, 1066, 790, 150, 151, 152, 153, 1067, 1068, 156, - 0, 157, 158, 159, 160, 791, 0, 792, 0, 163, - 164, 165, 166, 167, 168, 169, 170, 171, 172, 0, - 173, 174, 175, 176, 177, 178, 0, 179, 180, 181, - 182, 183, 184, 185, 186, 187, 188, 189, 1070, 191, - 192, 1071, 194, 0, 195, 0, 196, 197, 198, 199, - 200, 201, 0, 0, 202, 203, 204, 205, 0, 0, - 206, 207, 1073, 209, 210, 0, 211, 212, 213, 0, - 214, 215, 216, 0, 217, 218, 219, 220, 1074, 222, - 223, 224, 225, 226, 227, 793, 1075, 229, 0, 230, - 231, 1076, 233, 0, 234, 0, 235, 236, 0, 237, - 238, 239, 240, 241, 242, 0, 243, 0, 1077, 1078, - 246, 247, 0, 248, 249, 250, 251, 252, 253, 254, - 255, 256, 257, 258, 259, 0, 260, 261, 262, 263, - 264, 265, 266, 0, 267, 268, 269, 270, 271, 272, - 273, 274, 1079, 1080, 0, 1081, 0, 278, 279, 280, - 281, 282, 283, 284, 285, 286, 287, 288, 0, 0, - 289, 290, 291, 292, 0, 293, 294, 295, 296, 297, - 298, 299, 300, 1082, 302, 303, 304, 305, 306, 307, - 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, - 318, 319, 320, 321, 1083, 323, 1084, 325, 326, 327, - 328, 0, 329, 330, 331, 332, 1086, 795, 334, 1087, - 336, 337, 338, 0, 339, 340, 0, 0, 341, 342, - 343, 0, 0, 344, 345, 346, 347, 348, 349, 797, - 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, - 361, 0, 0, 0, 0, 362, 363, 798, 365, 366, - 367, 368, 369, 370, 371, 0, 372, 373, 374, 375, - 376, 377, 0, 378, 379, 380, 381, 382, 1089, 384, - 385, 386, 387, 0, 388, 389, 390, 391, 392, 393, - 394, 395, 396, 397, 398, 399, 400, 0, 401, 402, - 403, 404, 405, 406, 2220, 2221, 409, 410, 411, 412, - 413, 414, 415, 416, 417, 418, 419, 420, 0, 0, - 421, 422, 423, 424, 425, 426, 427, 428, 429, 0, - 430, 431, 432, 1091, 434, 0, 435, 436, 437, 438, - 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, - 800, 0, 0, 450, 451, 0, 452, 453, 454, 455, - 456, 457, 458, 0, 459, 1092, 1093, 0, 0, 462, - 463, 801, 465, 802, 1094, 467, 468, 803, 470, 471, - 472, 473, 474, 0, 0, 475, 476, 477, 0, 478, - 479, 480, 481, 0, 482, 483, 484, 485, 486, 487, - 1095, 489, 0, 490, 491, 492, 493, 494, 495, 496, - 497, 498, 0, 0, 499, 0, 0, 500, 501, 502, - 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, - 513, 514, 515, 516, 517, 518, 519, 520, 0, 0, - 0, 0, 0, 0, 0, 2222, 2223, 0, 0, 0, - 0, 0, 1100, 0, 1101, 0, 0, 0, 0, 0, - 1102, 1103, 1104, 1105, 117, 1056, 821, 1057, 1058, 1059, - 1060, 1061, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 118, 119, 120, 121, 122, 123, 124, - 125, 0, 126, 127, 128, 0, 0, 0, 0, 0, - 1062, 0, 0, 129, 130, 131, 0, 132, 133, 134, - 135, 136, 137, 138, 139, 1063, 141, 1064, 1065, 0, - 144, 145, 146, 147, 148, 149, 1066, 790, 150, 151, - 152, 153, 1067, 1068, 156, 0, 157, 158, 159, 160, - 791, 0, 792, 0, 163, 164, 165, 166, 167, 168, - 169, 170, 171, 172, 0, 173, 174, 175, 176, 177, - 178, 0, 179, 180, 181, 182, 183, 184, 185, 186, - 187, 188, 189, 1070, 191, 192, 1071, 194, 0, 195, - 0, 196, 197, 198, 199, 200, 201, 0, 0, 202, - 203, 204, 205, 0, 0, 206, 207, 1073, 209, 210, - 0, 211, 212, 213, 0, 214, 215, 216, 0, 217, - 218, 219, 220, 1074, 222, 223, 224, 225, 226, 227, - 793, 1075, 229, 0, 230, 231, 1076, 233, 0, 234, - 0, 235, 236, 0, 237, 238, 239, 240, 241, 242, - 0, 243, 0, 1077, 1078, 246, 247, 0, 248, 249, - 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, - 0, 260, 261, 262, 263, 264, 265, 266, 0, 267, - 268, 269, 270, 271, 272, 273, 274, 1079, 1080, 0, - 1081, 0, 278, 0, 280, 281, 282, 283, 284, 285, - 286, 287, 288, 0, 0, 289, 290, 291, 292, 0, - 293, 294, 295, 296, 297, 298, 299, 300, 1082, 302, - 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, - 313, 314, 315, 316, 317, 318, 319, 320, 321, 1083, - 323, 1084, 325, 326, 327, 328, 0, 329, 330, 331, - 332, 1086, 795, 334, 1087, 336, 337, 338, 0, 339, - 340, 0, 0, 1088, 342, 343, 0, 0, 344, 345, - 346, 347, 348, 349, 797, 351, 352, 353, 354, 355, - 356, 357, 358, 359, 360, 361, 0, 0, 0, 0, - 362, 363, 798, 365, 366, 367, 368, 369, 370, 371, - 0, 372, 373, 374, 375, 376, 377, 0, 378, 379, - 380, 381, 382, 1089, 384, 385, 386, 387, 0, 388, - 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, - 399, 400, 0, 401, 402, 403, 404, 405, 406, 1090, - 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, - 418, 419, 420, 0, 0, 421, 422, 423, 424, 425, - 426, 427, 428, 429, 0, 430, 431, 432, 1091, 434, - 0, 435, 436, 437, 438, 439, 440, 441, 442, 443, - 444, 445, 446, 447, 448, 800, 0, 0, 450, 451, - 0, 452, 453, 454, 455, 456, 457, 458, 0, 459, - 1092, 1093, 0, 0, 462, 463, 801, 465, 802, 1094, - 467, 468, 803, 470, 471, 472, 473, 474, 0, 0, - 475, 476, 477, 0, 478, 479, 480, 481, 0, 482, - 483, 484, 485, 486, 487, 1095, 489, 0, 490, 491, - 492, 493, 494, 495, 496, 497, 498, 0, 0, 499, - 0, 0, 500, 501, 502, 503, 504, 505, 506, 507, - 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, - 518, 519, 520, 0, 0, 0, 0, 0, 0, 0, - 1434, 1435, 0, 0, 0, 0, 0, 1100, 0, 1101, - 0, 0, 0, 0, 0, 1102, 1103, 1104, 1105, 117, - 1056, 821, 1057, 1058, 0, 1060, 1061, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 118, 119, - 120, 121, 122, 123, 124, 125, 0, 126, 127, 128, - 0, 0, 0, 0, 0, 1062, 0, 0, 129, 130, - 131, 0, 132, 133, 134, 135, 136, 137, 138, 139, - 1063, 141, 1064, 1065, 0, 144, 145, 146, 147, 148, - 149, 1066, 790, 150, 151, 152, 153, 1067, 1068, 156, - 0, 157, 158, 159, 160, 791, 0, 792, 0, 163, - 164, 165, 166, 167, 168, 169, 170, 171, 172, 0, - 173, 174, 175, 176, 177, 178, 0, 179, 180, 181, - 182, 183, 184, 185, 186, 187, 188, 189, 1070, 191, - 192, 1071, 194, 0, 195, 0, 196, 197, 198, 199, - 200, 201, 0, 0, 202, 203, 204, 205, 0, 0, - 206, 207, 1073, 209, 210, 0, 211, 212, 213, 0, - 214, 215, 216, 0, 217, 218, 219, 220, 1074, 222, - 223, 224, 225, 226, 227, 793, 1075, 229, 0, 230, - 231, 1076, 233, 0, 234, 0, 235, 236, 0, 237, - 238, 239, 240, 241, 242, 0, 243, 3114, 1077, 1078, - 246, 247, 0, 248, 249, 250, 251, 252, 253, 254, - 255, 256, 257, 258, 259, 0, 260, 261, 262, 263, - 264, 265, 266, 0, 267, 268, 269, 270, 271, 272, - 273, 274, 1079, 1080, 0, 1081, 0, 278, 279, 280, - 281, 282, 283, 284, 285, 286, 287, 288, 0, 0, - 289, 290, 291, 292, 0, 293, 294, 295, 296, 297, - 298, 299, 300, 1082, 302, 303, 304, 305, 306, 307, - 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, - 318, 319, 320, 321, 1083, 323, 1084, 325, 326, 327, - 328, 0, 329, 330, 331, 332, 1086, 795, 334, 1087, - 336, 337, 338, 0, 339, 340, 0, 0, 341, 342, - 343, 0, 0, 344, 345, 346, 347, 348, 349, 797, - 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, - 361, 0, 0, 0, 0, 362, 363, 798, 365, 366, - 367, 368, 369, 370, 371, 0, 372, 373, 374, 375, - 376, 377, 0, 378, 379, 380, 381, 382, 1089, 384, - 385, 386, 387, 0, 388, 389, 390, 391, 392, 393, - 394, 395, 396, 397, 398, 399, 400, 0, 401, 402, - 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, - 413, 414, 415, 416, 417, 418, 419, 420, 0, 0, - 421, 422, 423, 424, 425, 426, 427, 428, 429, 0, - 430, 431, 432, 1091, 434, 0, 435, 436, 437, 438, - 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, - 800, 0, 0, 450, 451, 0, 452, 453, 454, 455, - 456, 457, 458, 0, 459, 1092, 1093, 0, 0, 462, - 463, 801, 465, 802, 1094, 467, 468, 803, 470, 471, - 472, 473, 474, 0, 0, 475, 476, 477, 0, 478, - 479, 480, 481, 0, 482, 483, 484, 485, 486, 487, - 1095, 489, 0, 490, 491, 492, 493, 494, 495, 496, - 497, 498, 0, 0, 499, 0, 0, 500, 501, 502, - 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, - 513, 514, 515, 516, 517, 518, 519, 520, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 1100, 0, 2797, 0, 0, 0, 0, 0, - 1102, 1103, 1104, 1105, 117, 1056, 821, 1057, 1058, 0, - 1060, 1061, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 118, 119, 120, 121, 122, 123, 124, - 125, 0, 126, 127, 128, 0, 0, 0, 0, 0, - 1062, 0, 0, 129, 130, 131, 0, 132, 133, 134, - 135, 136, 137, 138, 139, 1063, 141, 1064, 1065, 0, - 144, 145, 146, 147, 148, 149, 1066, 790, 150, 151, - 152, 153, 1067, 1068, 156, 0, 157, 158, 159, 160, - 791, 0, 792, 0, 163, 164, 165, 166, 167, 168, - 169, 170, 171, 172, 0, 173, 174, 175, 176, 177, - 178, 0, 179, 180, 181, 182, 183, 184, 185, 186, - 187, 188, 189, 1070, 191, 192, 1071, 194, 0, 195, - 0, 196, 197, 198, 199, 200, 201, 0, 0, 202, - 203, 204, 205, 0, 0, 206, 207, 1073, 209, 210, - 0, 211, 212, 213, 0, 214, 215, 216, 0, 217, - 218, 219, 220, 1074, 222, 223, 224, 225, 226, 227, - 793, 1075, 229, 0, 230, 231, 1076, 233, 0, 234, - 0, 235, 236, 0, 237, 238, 239, 240, 241, 242, - 0, 243, 0, 1077, 1078, 246, 247, 0, 248, 249, - 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, - 0, 260, 261, 262, 263, 264, 265, 266, 0, 267, - 268, 269, 270, 271, 272, 273, 274, 1079, 1080, 0, - 1081, 0, 278, 279, 280, 281, 282, 283, 284, 285, - 286, 287, 288, 0, 0, 289, 290, 291, 292, 0, - 293, 294, 295, 296, 297, 298, 299, 300, 1082, 302, - 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, - 313, 314, 315, 316, 317, 318, 319, 320, 321, 1083, - 323, 1084, 325, 326, 327, 328, 0, 329, 330, 331, - 332, 1086, 795, 334, 1087, 336, 337, 338, 0, 339, - 340, 0, 0, 341, 342, 343, 0, 0, 344, 345, - 346, 347, 348, 349, 797, 351, 352, 353, 354, 355, - 356, 357, 358, 359, 360, 361, 0, 0, 0, 0, - 362, 363, 798, 365, 366, 367, 368, 369, 370, 371, - 0, 372, 373, 374, 375, 376, 377, 0, 378, 379, - 380, 381, 382, 1089, 384, 385, 386, 387, 0, 388, - 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, - 399, 400, 0, 401, 402, 403, 404, 405, 406, 407, - 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, - 418, 419, 420, 0, 0, 421, 422, 423, 424, 425, - 426, 427, 428, 429, 0, 430, 431, 432, 1091, 434, - 0, 435, 436, 437, 438, 439, 440, 441, 442, 443, - 444, 445, 446, 447, 448, 800, 0, 0, 450, 451, - 0, 452, 453, 454, 455, 456, 457, 458, 0, 459, - 1092, 1093, 0, 0, 462, 463, 801, 465, 802, 1094, - 467, 468, 803, 470, 471, 472, 473, 474, 0, 0, - 475, 476, 477, 0, 478, 479, 480, 481, 0, 482, - 483, 484, 485, 486, 487, 1095, 489, 0, 490, 491, - 492, 493, 494, 495, 496, 497, 498, 0, 0, 499, - 0, 0, 500, 501, 502, 503, 504, 505, 506, 507, - 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, - 518, 519, 520, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 1100, 0, 2797, - 0, 0, 0, 0, 0, 1102, 1103, 1104, 1105, 117, - 1056, 821, 1057, 1058, 0, 1060, 1061, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 118, 119, - 120, 121, 122, 123, 124, 125, 0, 126, 127, 128, - 0, 0, 0, 0, 0, 1062, 0, 0, 129, 130, - 131, 0, 132, 133, 134, 135, 136, 137, 138, 139, - 1063, 141, 1064, 1065, 0, 144, 145, 146, 147, 148, - 149, 1066, 790, 150, 151, 152, 153, 1067, 1068, 156, - 0, 157, 158, 159, 160, 791, 0, 792, 0, 163, - 164, 165, 166, 167, 168, 169, 170, 171, 172, 0, - 173, 174, 175, 176, 177, 178, 0, 179, 180, 181, - 182, 183, 184, 185, 186, 187, 188, 189, 1070, 191, - 192, 1071, 194, 0, 195, 0, 196, 197, 198, 199, - 200, 201, 0, 0, 202, 203, 204, 205, 0, 0, - 206, 207, 1073, 209, 210, 0, 211, 212, 213, 0, - 214, 215, 216, 0, 217, 218, 219, 220, 1074, 222, - 223, 224, 225, 226, 227, 793, 1075, 229, 0, 230, - 231, 1076, 233, 0, 234, 0, 235, 236, 0, 237, - 238, 239, 240, 241, 242, 0, 243, 0, 1077, 1078, - 246, 247, 0, 248, 249, 250, 251, 252, 253, 254, - 255, 256, 257, 258, 259, 0, 260, 261, 262, 263, - 264, 265, 266, 0, 267, 268, 269, 270, 271, 272, - 273, 274, 1079, 1080, 0, 1081, 0, 278, 279, 280, - 281, 282, 283, 284, 285, 286, 287, 288, 0, 0, - 289, 290, 291, 292, 0, 293, 294, 295, 296, 297, - 298, 299, 300, 1082, 302, 303, 304, 305, 306, 307, - 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, - 318, 319, 320, 321, 1083, 323, 1084, 325, 326, 327, - 328, 0, 329, 330, 331, 332, 1086, 795, 334, 1087, - 336, 337, 338, 0, 339, 340, 0, 0, 341, 342, - 343, 0, 0, 344, 345, 346, 347, 348, 349, 797, - 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, - 361, 0, 0, 0, 0, 362, 363, 798, 365, 366, - 367, 368, 369, 370, 371, 0, 372, 373, 374, 375, - 376, 377, 0, 378, 379, 380, 381, 382, 1089, 384, - 385, 386, 387, 0, 388, 389, 390, 391, 392, 393, - 394, 395, 396, 397, 398, 399, 400, 0, 401, 402, - 403, 404, 405, 406, 1090, 408, 409, 410, 411, 412, - 413, 414, 415, 416, 417, 418, 419, 420, 0, 0, - 421, 422, 423, 424, 425, 426, 427, 428, 429, 0, - 430, 431, 432, 1091, 434, 0, 435, 436, 437, 438, - 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, - 800, 0, 0, 450, 451, 0, 452, 453, 454, 455, - 456, 457, 458, 0, 459, 1092, 1093, 0, 0, 462, - 463, 801, 465, 802, 1094, 467, 468, 803, 470, 471, - 472, 473, 474, 0, 0, 475, 476, 477, 0, 478, - 479, 480, 481, 0, 482, 483, 484, 485, 486, 487, - 1095, 489, 0, 490, 491, 492, 493, 494, 495, 496, - 497, 498, 0, 0, 499, 0, 0, 500, 501, 502, - 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, - 513, 514, 515, 516, 517, 518, 519, 520, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 1100, 0, 1101, 0, 0, 0, 0, 0, - 1102, 1103, 1104, 1105, 117, 1056, 821, 1057, 1058, 1059, - 1060, 1061, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 118, 119, 120, 121, 122, 123, 124, - 125, 0, 126, 127, 128, 0, 0, 0, 0, 0, - 1062, 0, 0, 129, 130, 131, 0, 132, 133, 134, - 135, 136, 137, 138, 0, 1063, 141, 1064, 1065, 0, - 144, 145, 146, 147, 148, 149, 1066, 790, 150, 151, - 152, 153, 1067, 1068, 156, 0, 157, 158, 159, 160, - 791, 0, 792, 0, 1069, 164, 165, 166, 167, 168, - 169, 170, 171, 172, 0, 173, 174, 175, 176, 177, - 178, 0, 179, 180, 181, 182, 183, 184, 185, 186, - 187, 188, 189, 1070, 191, 192, 1071, 194, 1072, 195, - 0, 196, 197, 198, 199, 200, 201, 0, 0, 202, - 203, 204, 205, 0, 0, 206, 207, 1073, 209, 210, - 0, 211, 212, 213, 0, 214, 0, 216, 0, 217, - 218, 219, 220, 1074, 222, 223, 224, 225, 226, 227, - 793, 1075, 229, 0, 230, 231, 1076, 233, 0, 234, - 0, 235, 236, 0, 237, 238, 239, 240, 0, 242, - 0, 243, 0, 1077, 1078, 246, 247, 0, 248, 249, - 250, 251, 252, 253, 254, 0, 256, 257, 258, 259, - 0, 260, 261, 262, 263, 264, 265, 266, 0, 267, - 268, 269, 270, 271, 272, 273, 274, 1079, 1080, 0, - 1081, 0, 278, 0, 0, 281, 282, 283, 284, 285, - 286, 287, 288, 0, 0, 289, 290, 291, 0, 0, - 293, 294, 295, 296, 297, 298, 299, 300, 1082, 302, - 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, - 313, 314, 315, 316, 317, 318, 319, 320, 321, 1083, - 323, 1084, 325, 326, 327, 328, 0, 329, 330, 0, - 332, 1086, 795, 334, 1087, 336, 337, 338, 0, 339, - 340, 0, 0, 1088, 342, 343, 0, 0, 344, 345, - 346, 347, 348, 349, 797, 351, 352, 353, 354, 355, - 356, 357, 358, 359, 360, 361, 0, 0, 0, 0, - 362, 363, 798, 365, 366, 367, 368, 369, 370, 371, - 0, 372, 373, 374, 375, 376, 377, 0, 378, 379, - 380, 381, 382, 1089, 384, 385, 386, 387, 0, 388, - 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, - 399, 400, 0, 401, 402, 403, 404, 405, 406, 1090, - 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, - 418, 419, 420, 0, 0, 421, 422, 423, 424, 425, - 426, 427, 428, 429, 0, 0, 431, 432, 1091, 434, - 0, 435, 436, 437, 438, 439, 440, 441, 442, 443, - 444, 445, 446, 447, 448, 800, 0, 0, 450, 451, - 0, 452, 453, 454, 455, 456, 457, 458, 0, 459, - 1092, 1093, 0, 0, 462, 463, 801, 465, 802, 1094, - 467, 468, 803, 470, 471, 472, 473, 474, 0, 0, - 475, 476, 477, 0, 478, 479, 480, 481, 0, 482, - 483, 484, 485, 486, 487, 1095, 489, 0, 490, 491, - 492, 493, 494, 495, 496, 497, 498, 0, 0, 499, - 0, 0, 500, 501, 502, 503, 504, 505, 506, 507, - 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, - 518, 519, 520, 0, 0, 0, 0, 0, 0, 0, - 1097, 1098, 1099, 0, 974, 1363, 821, 1100, 0, 1101, - 1060, 0, 0, 0, 0, 1102, 1103, 1104, 1105, 0, - 0, 0, 0, 118, 119, 120, 121, 122, 123, 124, - 125, 0, 126, 127, 128, 0, 0, 0, 565, 0, - 0, 0, 0, 570, 130, 131, 0, 132, 133, 134, - 572, 136, 137, 138, 573, 574, 575, 576, 577, 0, - 144, 145, 146, 147, 148, 149, 0, 0, 150, 151, - 152, 153, 581, 582, 156, 0, 157, 158, 159, 160, - 584, 0, 586, 0, 588, 164, 165, 166, 167, 168, - 589, 170, 171, 172, 0, 173, 174, 175, 176, 177, - 178, 0, 592, 180, 181, 182, 183, 184, 185, 186, - 187, 188, 189, 594, 191, 192, 595, 194, 0, 195, - 0, 196, 197, 198, 199, 200, 201, 0, 0, 202, - 203, 204, 205, 0, 0, 206, 207, 208, 209, 210, - 0, 211, 212, 213, 0, 214, 215, 216, 0, 217, - 218, 219, 220, 605, 222, 223, 224, 225, 226, 227, - 606, 1364, 229, 0, 230, 231, 609, 233, 0, 234, - 0, 235, 612, 0, 614, 238, 239, 615, 616, 242, - 0, 243, 0, 619, 620, 246, 247, 0, 248, 249, - 250, 251, 252, 253, 254, 622, 256, 257, 258, 259, - 0, 260, 261, 262, 263, 264, 265, 266, 0, 267, - 625, 626, 270, 271, 272, 273, 274, 627, 628, 0, - 630, 0, 278, 632, 633, 281, 634, 283, 284, 285, - 286, 287, 288, 0, 0, 289, 637, 291, 638, 0, - 293, 294, 295, 296, 297, 298, 299, 300, 2401, 302, - 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, - 313, 314, 315, 316, 317, 318, 319, 320, 321, 641, - 642, 643, 325, 326, 327, 644, 0, 329, 330, 646, - 332, 0, 648, 334, 649, 336, 337, 338, 0, 339, - 340, 1365, 0, 341, 342, 343, 0, 0, 344, 345, - 655, 656, 348, 657, 658, 351, 352, 353, 354, 355, - 356, 357, 358, 359, 360, 361, 0, 0, 0, 0, - 362, 363, 663, 664, 366, 367, 665, 369, 370, 371, - 0, 372, 373, 374, 375, 376, 377, 0, 378, 379, - 380, 381, 382, 668, 384, 385, 386, 387, 0, 388, - 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, - 399, 400, 0, 401, 402, 671, 404, 405, 406, 672, - 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, - 418, 419, 420, 0, 674, 421, 422, 423, 424, 425, - 426, 675, 428, 429, 0, 677, 431, 432, 678, 434, - 0, 435, 436, 437, 438, 439, 440, 441, 442, 443, - 444, 445, 446, 680, 448, 681, 0, 0, 450, 451, - 0, 452, 685, 454, 455, 456, 457, 458, 0, 459, - 687, 688, 0, 0, 462, 463, 691, 465, 692, 1366, - 467, 468, 694, 470, 471, 472, 473, 474, 0, 0, - 475, 476, 477, 0, 478, 479, 480, 481, 0, 482, - 483, 484, 485, 486, 699, 700, 489, 0, 490, 702, - 492, 493, 494, 495, 496, 497, 498, 0, 0, 499, - 0, 0, 500, 501, 502, 503, 504, 505, 707, 708, - 709, 710, 711, 712, 713, 714, 715, 716, 717, 517, - 518, 519, 520, 0, 0, 0, 0, 0, 0, 0, - 1367, 1368, 2402, 117, 0, 0, 0, 2403, 0, 2404, - 1061, 0, 0, 0, 0, 0, 0, 0, 1105, 0, - 0, 0, 118, 119, 120, 121, 122, 123, 124, 125, - 0, 126, 127, 128, 0, 0, 0, 0, 0, 1062, - 0, 0, 129, 130, 131, 0, 132, 133, 134, 135, - 136, 137, 138, 139, 140, 141, 142, 143, 0, 144, - 145, 146, 147, 148, 149, 1066, 790, 150, 151, 152, - 153, 154, 155, 156, 0, 157, 158, 159, 160, 791, - 0, 792, 0, 163, 164, 165, 166, 167, 168, 169, - 170, 171, 172, 0, 173, 174, 175, 176, 177, 178, - 0, 179, 180, 181, 182, 183, 184, 185, 186, 187, - 188, 189, 190, 191, 192, 193, 194, 0, 195, 0, - 196, 197, 198, 199, 200, 201, 0, 0, 202, 203, - 204, 205, 0, 0, 206, 207, 208, 209, 210, 0, - 211, 212, 213, 0, 214, 215, 216, 0, 217, 218, - 219, 220, 221, 222, 223, 224, 225, 226, 227, 793, - 0, 229, 0, 230, 231, 232, 233, 0, 234, 0, - 235, 236, 0, 237, 238, 239, 240, 241, 242, 0, - 243, 0, 244, 245, 246, 247, 0, 248, 249, 250, - 251, 252, 253, 254, 255, 256, 257, 258, 259, 0, - 260, 261, 262, 263, 264, 265, 266, 0, 267, 268, - 269, 270, 271, 272, 273, 274, 275, 276, 0, 277, - 0, 278, 279, 280, 281, 282, 283, 284, 285, 286, - 287, 288, 0, 0, 289, 290, 291, 292, 0, 293, - 294, 295, 296, 297, 298, 299, 300, 1082, 302, 303, - 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, - 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, - 324, 325, 326, 327, 328, 0, 329, 330, 331, 332, - 0, 795, 334, 335, 336, 337, 338, 0, 339, 340, - 0, 0, 341, 342, 343, 0, 0, 344, 345, 346, - 347, 348, 349, 797, 351, 352, 353, 354, 355, 356, - 357, 358, 359, 360, 361, 0, 0, 0, 0, 362, - 363, 798, 365, 366, 367, 368, 369, 370, 371, 0, - 372, 373, 374, 375, 376, 377, 0, 378, 379, 380, - 381, 382, 383, 384, 385, 386, 387, 0, 388, 389, - 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, - 400, 0, 401, 402, 403, 404, 405, 406, 407, 408, - 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, - 419, 420, 0, 0, 421, 422, 423, 424, 425, 426, - 427, 428, 429, 0, 430, 431, 432, 433, 434, 0, - 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, - 445, 446, 447, 448, 800, 0, 0, 450, 451, 0, - 452, 453, 454, 455, 456, 457, 458, 0, 459, 460, - 461, 0, 0, 462, 463, 801, 465, 802, 0, 467, - 468, 803, 470, 471, 472, 473, 474, 0, 0, 475, - 476, 477, 0, 478, 479, 480, 481, 0, 482, 483, - 484, 485, 486, 487, 488, 489, 0, 490, 491, 492, - 493, 494, 495, 496, 497, 498, 0, 0, 499, 0, - 0, 500, 501, 502, 503, 504, 505, 506, 507, 508, - 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, - 519, 520, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 528, 1978, 0, 1100, 0, 2138, 1979, - 1061, 0, 0, 0, 1102, 1103, 1104, 1105, 0, 0, - 0, 0, 118, 119, 120, 121, 122, 123, 124, 125, - 0, 126, 127, 128, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 130, 131, 0, 132, 133, 134, 0, - 136, 137, 138, 139, 140, 0, 142, 143, 0, 144, - 145, 146, 147, 148, 149, 0, 0, 150, 151, 152, - 153, 154, 155, 156, 0, 157, 158, 159, 160, 161, - 0, 0, 0, 163, 164, 165, 166, 167, 168, 0, - 170, 171, 172, 0, 173, 174, 175, 176, 177, 178, - 0, 0, 180, 181, 182, 183, 184, 185, 186, 187, - 188, 189, 190, 191, 192, 193, 194, 0, 195, 0, - 196, 197, 198, 199, 200, 201, 0, 0, 202, 203, - 204, 205, 0, 0, 206, 207, 208, 209, 210, 0, - 211, 212, 213, 0, 214, 215, 216, 0, 217, 218, - 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, - 0, 229, 0, 230, 231, 232, 233, 0, 234, 0, - 235, 0, 0, 0, 238, 239, 529, 0, 242, 0, - 243, 0, 244, 245, 246, 247, 0, 248, 249, 250, - 251, 252, 253, 254, 0, 256, 257, 258, 259, 0, - 260, 261, 262, 263, 264, 265, 266, 0, 267, 0, - 269, 270, 271, 272, 273, 274, 275, 276, 0, 277, - 0, 278, 0, 0, 281, 0, 283, 284, 285, 286, - 287, 288, 0, 0, 289, 0, 291, 0, 0, 293, - 294, 295, 296, 297, 298, 299, 300, 530, 302, 303, - 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, - 314, 315, 316, 317, 318, 319, 320, 321, 322, 0, - 324, 325, 326, 327, 328, 0, 329, 330, 0, 332, - 0, 333, 334, 335, 336, 337, 338, 0, 339, 340, - 0, 0, 341, 342, 343, 0, 0, 344, 345, 346, - 0, 348, 0, 350, 351, 352, 353, 354, 355, 356, - 357, 358, 359, 360, 361, 0, 0, 0, 0, 362, - 363, 364, 0, 366, 367, 368, 369, 370, 371, 0, - 372, 373, 374, 375, 376, 377, 0, 378, 379, 380, - 381, 382, 383, 384, 385, 386, 387, 0, 388, 389, - 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, - 400, 0, 401, 402, 0, 404, 405, 406, 407, 408, - 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, - 419, 420, 0, 0, 421, 422, 423, 424, 425, 426, - 427, 428, 429, 0, 0, 431, 432, 433, 434, 0, - 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, - 445, 446, 531, 448, 449, 0, 0, 450, 451, 0, - 452, 0, 454, 455, 456, 457, 458, 0, 459, 460, - 461, 0, 0, 462, 463, 464, 465, 466, 0, 467, - 468, 469, 470, 471, 472, 473, 474, 0, 0, 475, - 476, 477, 0, 478, 479, 480, 481, 0, 482, 483, - 484, 485, 486, 487, 488, 489, 0, 490, 0, 492, - 493, 494, 495, 496, 497, 498, 0, 0, 499, 0, - 0, 500, 501, 502, 503, 504, 505, 506, 507, 508, - 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, - 519, 520, 0, 0, 0, 0, 0, 528, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 1102, 1103, 118, 119, 120, 121, - 122, 123, 124, 125, 0, 126, 127, 128, 0, 0, - 0, 0, 0, 0, 1010, 0, 0, 130, 131, 0, - 132, 133, 134, 0, 136, 137, 138, 139, 140, 0, - 142, 143, 0, 144, 145, 146, 147, 148, 149, 0, - 0, 150, 151, 152, 153, 154, 155, 156, 0, 157, - 158, 159, 160, 161, 0, 0, 0, 163, 164, 165, - 166, 167, 168, 0, 170, 171, 172, 0, 173, 174, - 175, 176, 177, 178, 0, 0, 180, 181, 182, 183, - 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, - 194, 0, 195, 0, 196, 197, 198, 199, 200, 201, - 0, 0, 202, 203, 204, 205, 0, 0, 206, 207, - 208, 209, 210, 0, 211, 212, 213, 0, 214, 215, - 216, -540, 217, 218, 219, 220, 221, 222, 223, 224, - 225, 226, 227, 228, 0, 229, -540, 230, 231, 232, - 233, -540, 234, 0, 235, 0, 0, 0, 238, 239, - 529, 0, 242, 0, 243, 0, 244, 245, 246, 247, - 0, 248, 249, 250, 251, 252, 253, 254, 0, 256, - 257, 258, 259, 0, 260, 261, 262, 263, 264, 265, - 266, 0, 267, 0, 269, 270, 271, 272, 273, 274, - 275, 276, -540, 277, 0, 278, 0, 0, 281, 0, - 283, 284, 285, 286, 287, 288, 0, 0, 289, 0, - 291, 0, -540, 293, 294, 295, 296, 297, 298, 299, - 300, 530, 302, 303, 304, 305, 306, 307, 308, 309, - 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, - 320, 321, 322, 0, 324, 325, 326, 327, 328, 0, - 329, 330, 0, 332, 0, 333, 334, 335, 336, 337, - 338, -540, 339, 340, 0, 0, 341, 342, 343, 0, - -540, 344, 345, 346, 0, 348, 0, 350, 351, 352, - 353, 354, 355, 356, 357, 358, 359, 360, 361, 0, - 0, 0, 0, 362, 363, 364, 0, 366, 367, 368, - 369, 370, 371, 0, 372, 373, 374, 375, 376, 377, - 0, 378, 379, 380, 381, 382, 383, 384, 385, 386, - 387, 0, 388, 389, 390, 391, 392, 393, 394, 395, - 396, 397, 398, 399, 400, 0, 401, 402, 0, 404, - 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, - 415, 416, 417, 418, 419, 420, 0, 0, 421, 422, - 423, 424, 425, 426, 427, 428, 429, 0, 0, 431, - 432, 433, 434, 0, 435, 436, 437, 438, 439, 440, - 441, 442, 443, 444, 445, 446, 531, 448, 449, 0, - 0, 450, 451, 0, 452, 0, 454, 455, 456, 457, - 458, 0, 459, 460, 461, 0, 0, 462, 463, 464, - 465, 466, 0, 467, 468, 469, 470, 471, 472, 473, - 474, -540, 0, 475, 476, 477, 0, 478, 479, 480, - 481, 0, 482, 483, 484, 485, 486, 487, 488, 489, - 0, 490, 0, 492, 493, 494, 495, 496, 497, 498, - 0, 0, 499, 0, 0, 500, 501, 502, 503, 504, - 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, - 515, 516, 517, 518, 519, 520, 528, 0, 554, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 1177, 0, 118, 119, 120, 121, 122, - 123, 124, 125, 0, 126, 127, 128, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 130, 131, 0, 132, - 133, 134, 0, 136, 137, 138, 139, 140, 0, 142, - 143, 0, 144, 145, 146, 147, 148, 149, 0, 0, - 150, 151, 152, 153, 154, 155, 156, 0, 157, 158, - 159, 160, 161, 0, 0, 0, 163, 164, 165, 166, - 167, 168, 0, 170, 171, 172, 0, 173, 174, 175, - 176, 177, 178, 0, 0, 180, 181, 182, 183, 184, - 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, - 0, 195, 0, 196, 197, 198, 199, 200, 201, 0, - 0, 202, 203, 204, 205, 0, 0, 206, 207, 208, - 209, 210, 0, 211, 212, 213, 0, 214, 215, 216, - 0, 217, 218, 219, 220, 221, 222, 223, 224, 225, - 226, 227, 228, 0, 229, 0, 230, 231, 232, 233, - 0, 234, 0, 235, 0, 0, 0, 238, 239, 529, - 0, 242, 0, 243, 0, 244, 245, 246, 247, 0, - 248, 249, 250, 251, 252, 253, 254, 0, 256, 257, - 258, 259, 0, 260, 261, 262, 263, 264, 265, 266, - 0, 267, 0, 269, 270, 271, 272, 273, 274, 275, - 276, 0, 277, 0, 278, 0, 0, 281, 0, 283, - 284, 285, 286, 287, 288, 0, 0, 289, 0, 291, - 0, 0, 293, 294, 295, 296, 297, 298, 299, 300, - 530, 302, 303, 304, 305, 306, 307, 308, 309, 310, - 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, - 321, 322, 0, 324, 325, 326, 327, 328, 0, 329, - 330, 0, 332, 0, 333, 334, 335, 336, 337, 338, - 0, 339, 340, 0, 0, 341, 342, 343, 0, 0, - 344, 345, 346, 0, 348, 0, 350, 351, 352, 353, - 354, 355, 356, 357, 358, 359, 360, 361, 0, 0, - 0, 0, 362, 363, 364, 0, 366, 367, 368, 369, - 370, 371, 0, 372, 373, 374, 375, 376, 377, 0, - 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, - 0, 388, 389, 390, 391, 392, 393, 394, 395, 396, - 397, 398, 399, 400, 0, 401, 402, 0, 404, 405, - 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, - 416, 417, 418, 419, 420, 0, 0, 421, 422, 423, - 424, 425, 426, 427, 428, 429, 0, 0, 431, 432, - 433, 434, 0, 435, 436, 437, 438, 439, 440, 441, - 442, 443, 444, 445, 446, 531, 448, 449, 0, 0, - 450, 451, 0, 452, 0, 454, 455, 456, 457, 458, - 0, 459, 460, 461, 0, 0, 462, 463, 464, 465, - 466, 0, 467, 468, 469, 470, 471, 472, 473, 474, - 0, 0, 475, 476, 477, 0, 478, 479, 480, 481, - 0, 482, 483, 484, 485, 486, 487, 488, 489, 0, - 490, 0, 492, 493, 494, 495, 496, 497, 498, 0, - 0, 499, 0, 0, 500, 501, 502, 503, 504, 505, - 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, - 516, 517, 518, 519, 520, 974, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 2490, 3304, 0, 118, 119, 120, 121, 122, 123, - 124, 125, 0, 126, 127, 128, 3, 4, 0, 565, - 0, 0, 0, 0, 570, 130, 131, 0, 132, 133, - 134, 572, 136, 137, 138, 573, 574, 575, 576, 577, - 0, 144, 145, 146, 147, 148, 149, 0, 0, 150, - 151, 152, 153, 581, 582, 156, 0, 157, 158, 159, - 160, 584, 0, 586, 0, 588, 164, 165, 166, 167, - 168, 589, 170, 171, 172, 0, 173, 174, 175, 176, - 177, 178, 0, 592, 180, 181, 182, 183, 184, 185, - 186, 187, 188, 189, 594, 191, 192, 595, 194, 0, - 195, 0, 196, 197, 198, 199, 200, 201, 14, 15, - 202, 203, 204, 205, 0, 0, 206, 207, 208, 209, - 210, 0, 211, 212, 213, 0, 214, 215, 216, 0, - 217, 218, 219, 220, 605, 222, 223, 224, 225, 226, - 227, 606, 0, 229, 0, 230, 231, 609, 233, 0, - 234, 0, 235, 612, 23, 614, 238, 239, 615, 616, - 242, 0, 243, 0, 619, 620, 246, 247, 0, 248, - 249, 250, 251, 252, 253, 254, 622, 256, 257, 258, - 259, 0, 260, 261, 262, 263, 264, 265, 266, 0, - 267, 625, 626, 270, 271, 272, 273, 274, 627, 628, - 0, 630, 0, 278, 632, 633, 281, 634, 283, 284, - 285, 286, 287, 288, 0, 0, 289, 637, 291, 638, - 0, 293, 294, 295, 296, 297, 298, 299, 300, 640, - 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, - 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, - 641, 642, 643, 325, 326, 327, 644, 0, 329, 330, - 646, 332, 0, 648, 334, 649, 336, 337, 338, 0, - 339, 340, 0, 0, 341, 342, 343, 0, 0, 344, - 345, 655, 656, 348, 657, 658, 351, 352, 353, 354, - 355, 356, 357, 358, 359, 360, 361, 26, 27, 28, - 0, 362, 363, 663, 664, 366, 367, 665, 369, 370, - 371, 0, 372, 373, 374, 375, 376, 377, 0, 378, - 379, 380, 381, 382, 668, 384, 385, 386, 387, 0, - 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, - 398, 399, 400, 0, 401, 402, 671, 404, 405, 406, - 672, 408, 409, 410, 411, 412, 413, 414, 415, 416, - 417, 418, 419, 420, 33, 674, 421, 422, 423, 424, - 425, 426, 675, 428, 429, 35, 677, 431, 432, 678, - 434, 0, 435, 436, 437, 438, 439, 440, 441, 442, - 443, 444, 445, 446, 680, 448, 681, 37, 0, 450, - 451, 38, 452, 685, 454, 455, 456, 457, 458, 0, - 459, 687, 688, 0, 0, 462, 463, 691, 465, 692, - 0, 467, 468, 694, 470, 471, 472, 473, 474, 0, - 0, 475, 476, 477, 40, 478, 479, 480, 481, 0, - 482, 483, 484, 485, 486, 975, 700, 489, 0, 490, - 702, 492, 493, 494, 495, 496, 497, 498, 0, 0, - 499, 0, 44, 500, 501, 502, 503, 504, 505, 707, - 708, 709, 710, 711, 712, 713, 714, 715, 716, 717, - 517, 518, 519, 520, 0, 117, 45, 554, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 46, 0, 0, 0, 118, 119, 120, 121, 122, 123, - 124, 125, 0, 126, 127, 128, 0, 0, 0, 0, - 0, 0, 0, 0, 129, 130, 131, 0, 132, 133, - 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, - 0, 144, 145, 146, 147, 148, 149, 0, 790, 150, - 151, 152, 153, 154, 155, 156, 0, 157, 158, 159, - 160, 791, 0, 792, 0, 163, 164, 165, 166, 167, - 168, 169, 170, 171, 172, 0, 173, 174, 175, 176, - 177, 178, 0, 179, 180, 181, 182, 183, 184, 185, - 186, 187, 188, 189, 190, 191, 192, 193, 194, 0, - 195, 0, 196, 197, 198, 199, 200, 201, 14, 15, - 202, 203, 204, 205, 0, 0, 206, 207, 208, 209, - 210, 0, 211, 212, 213, 0, 214, 215, 216, 0, - 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, - 227, 793, 0, 229, 0, 230, 231, 232, 233, 0, - 234, 0, 235, 236, 23, 237, 238, 239, 240, 241, - 242, 0, 243, 0, 244, 245, 246, 247, 0, 248, - 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, - 259, 0, 260, 261, 262, 263, 264, 265, 266, 0, - 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, - 0, 277, 0, 278, 279, 280, 281, 282, 283, 284, - 285, 286, 287, 288, 794, 0, 289, 290, 291, 292, - 0, 293, 294, 295, 296, 297, 298, 299, 300, 301, - 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, - 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, - 322, 323, 324, 325, 326, 327, 328, 0, 329, 330, - 331, 332, 0, 795, 334, 335, 336, 337, 338, 0, - 339, 340, 0, 796, 341, 342, 343, 0, 0, 344, - 345, 346, 347, 348, 349, 797, 351, 352, 353, 354, - 355, 356, 357, 358, 359, 360, 361, 26, 27, 28, - 0, 362, 363, 798, 365, 366, 367, 368, 369, 370, - 371, 0, 372, 373, 374, 375, 376, 377, 0, 378, - 379, 380, 381, 382, 383, 384, 385, 386, 387, 0, - 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, - 398, 399, 400, 0, 401, 402, 403, 404, 405, 406, - 407, 799, 409, 410, 411, 412, 413, 414, 415, 416, - 417, 418, 419, 420, 33, 0, 421, 422, 423, 424, - 425, 426, 427, 428, 429, 35, 430, 431, 432, 433, - 434, 0, 435, 436, 437, 438, 439, 440, 441, 442, - 443, 444, 445, 446, 447, 448, 800, 37, 0, 450, - 451, 38, 452, 453, 454, 455, 456, 457, 458, 0, - 459, 460, 461, 0, 0, 462, 463, 801, 465, 802, - 0, 467, 468, 803, 470, 471, 472, 473, 474, 0, - 0, 475, 476, 477, 40, 478, 479, 480, 481, 0, - 482, 483, 484, 485, 486, 804, 488, 489, 0, 490, - 491, 492, 493, 494, 495, 496, 497, 498, 0, 0, - 499, 0, 44, 500, 501, 502, 503, 504, 505, 506, - 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, - 517, 518, 519, 520, 0, 117, 45, 554, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 805, 0, 0, 0, 118, 119, 120, 121, 122, 123, - 124, 125, 0, 126, 127, 128, 0, 0, 0, 0, - 0, 0, 0, 0, 129, 130, 131, 0, 132, 133, - 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, - 0, 144, 145, 146, 147, 148, 149, 0, 790, 150, - 151, 152, 153, 154, 155, 156, 0, 157, 158, 159, - 160, 791, 0, 792, 0, 163, 164, 165, 166, 167, - 168, 169, 170, 171, 172, 0, 173, 174, 175, 176, - 177, 178, 0, 179, 180, 181, 182, 183, 184, 185, - 186, 187, 188, 189, 190, 191, 192, 193, 194, 0, - 195, 0, 196, 197, 198, 199, 200, 201, 0, 0, - 202, 203, 204, 205, 0, 0, 206, 207, 208, 209, - 210, 0, 211, 212, 213, 0, 214, 215, 216, 0, - 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, - 227, 793, 0, 229, 0, 230, 231, 232, 233, 0, - 234, 0, 235, 236, 0, 237, 238, 239, 240, 241, - 242, 0, 243, 0, 244, 245, 246, 247, 0, 248, - 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, - 259, 0, 260, 261, 262, 263, 264, 265, 266, 0, - 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, - 0, 277, 0, 278, 279, 280, 281, 282, 283, 284, - 285, 286, 287, 288, 794, 0, 289, 290, 291, 292, - 0, 293, 294, 295, 296, 297, 298, 299, 300, 301, - 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, - 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, - 322, 323, 324, 325, 326, 327, 328, 0, 329, 330, - 331, 332, 0, 795, 334, 335, 336, 337, 338, 0, - 339, 340, 0, 796, 341, 342, 343, 0, 0, 344, - 345, 346, 347, 348, 349, 797, 351, 352, 353, 354, - 355, 356, 357, 358, 359, 360, 361, 0, 0, 0, - 0, 362, 363, 798, 365, 366, 367, 368, 369, 370, - 371, 0, 372, 373, 374, 375, 376, 377, 0, 378, - 379, 380, 381, 382, 383, 384, 385, 386, 387, 0, - 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, - 398, 399, 400, 0, 401, 402, 403, 404, 405, 406, - 407, 799, 409, 410, 411, 412, 413, 414, 415, 416, - 417, 418, 419, 420, 0, 0, 421, 422, 423, 424, - 425, 426, 427, 428, 429, 0, 430, 431, 432, 433, - 434, 0, 435, 436, 437, 438, 439, 440, 441, 442, - 443, 444, 445, 446, 447, 448, 800, 0, 0, 450, - 451, 0, 452, 453, 454, 455, 456, 457, 458, 0, - 459, 460, 461, 0, 0, 462, 463, 801, 465, 802, - 0, 467, 468, 803, 470, 471, 472, 473, 474, 0, - 0, 475, 476, 477, 0, 478, 479, 480, 481, 0, - 482, 483, 484, 485, 486, 804, 488, 489, 0, 490, - 491, 492, 493, 494, 495, 496, 497, 498, 0, 0, - 499, 0, 0, 500, 501, 502, 503, 504, 505, 506, - 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, - 517, 518, 519, 520, 117, 0, 554, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 805, 0, 0, 118, 119, 120, 121, 122, 123, 124, - 125, 0, 126, 127, 128, 0, 0, 0, 0, 0, - 0, 0, 0, 129, 130, 131, 0, 132, 133, 134, - 135, 136, 137, 138, 139, 140, 141, 142, 143, 0, - 144, 145, 146, 147, 148, 149, 0, 790, 150, 151, - 152, 153, 154, 155, 156, 0, 157, 158, 159, 160, - 791, 0, 792, 0, 163, 164, 165, 166, 167, 168, - 169, 170, 171, 172, 0, 173, 174, 175, 176, 177, - 178, 0, 179, 180, 181, 182, 183, 184, 185, 186, - 187, 188, 189, 190, 191, 192, 193, 194, 0, 195, - 0, 196, 197, 198, 199, 200, 201, 0, 0, 202, - 203, 204, 205, 0, 0, 206, 207, 208, 209, 210, - 0, 211, 212, 213, 0, 214, 215, 216, 0, 217, - 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, - 793, 0, 229, 0, 230, 231, 232, 233, 0, 234, - 0, 235, 236, 0, 237, 238, 239, 240, 241, 242, - 0, 243, 0, 244, 245, 246, 247, 0, 248, 249, - 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, - 0, 260, 261, 262, 263, 264, 265, 266, 0, 267, - 268, 269, 270, 271, 272, 273, 274, 275, 276, 0, - 277, 0, 278, 279, 280, 281, 282, 283, 284, 285, - 286, 287, 288, 0, 0, 289, 290, 291, 292, 0, - 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, - 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, - 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, - 323, 324, 325, 326, 327, 328, 0, 329, 330, 331, - 332, 0, 795, 334, 335, 336, 337, 338, 0, 339, - 340, 0, 796, 341, 342, 343, 0, 0, 344, 345, - 346, 347, 348, 349, 797, 351, 352, 353, 354, 355, - 356, 357, 358, 359, 360, 361, 0, 0, 0, 0, - 362, 363, 798, 365, 366, 367, 368, 369, 370, 371, - 0, 372, 373, 374, 375, 376, 377, 0, 378, 379, - 380, 381, 382, 383, 384, 385, 386, 387, 0, 388, - 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, - 399, 400, 0, 401, 402, 403, 404, 405, 406, 407, - 799, 409, 410, 411, 412, 413, 414, 415, 416, 417, - 418, 419, 420, 0, 0, 421, 422, 423, 424, 425, - 426, 427, 428, 429, 0, 430, 431, 432, 433, 434, - 0, 435, 436, 437, 438, 439, 440, 441, 442, 443, - 444, 445, 446, 447, 448, 800, 0, 0, 450, 451, - 0, 452, 453, 454, 455, 456, 457, 458, 0, 459, - 460, 461, 0, 0, 462, 463, 801, 465, 802, 0, - 467, 468, 803, 470, 471, 472, 473, 474, 0, 0, - 475, 476, 477, 0, 478, 479, 480, 481, 0, 482, - 483, 484, 485, 486, 487, 488, 489, 0, 490, 491, - 492, 493, 494, 495, 496, 497, 498, 0, 0, 499, - 0, 0, 500, 501, 502, 503, 504, 505, 506, 507, - 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, - 518, 519, 520, 117, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 1018, - 0, 0, 118, 119, 120, 121, 122, 123, 124, 125, - 0, 126, 127, 128, 0, 0, 0, 0, 0, 0, - 0, 0, 129, 130, 131, 0, 132, 133, 134, 135, - 136, 137, 138, 139, 140, 141, 142, 143, 0, 144, - 145, 146, 147, 148, 149, 0, 790, 150, 151, 152, - 153, 154, 155, 156, 0, 157, 158, 159, 160, 791, - 0, 792, 0, 163, 164, 165, 166, 167, 168, 169, - 170, 171, 172, 0, 173, 174, 175, 176, 177, 178, - 0, 179, 180, 181, 182, 183, 184, 185, 186, 187, - 188, 189, 190, 191, 192, 193, 194, 0, 195, 0, - 196, 197, 198, 199, 200, 201, 0, 0, 202, 203, - 204, 205, 0, 0, 206, 207, 208, 209, 210, 0, - 211, 212, 213, 0, 214, 215, 216, 0, 217, 218, - 219, 220, 221, 222, 223, 224, 225, 226, 227, 793, - 0, 229, 0, 230, 231, 232, 233, 0, 234, 0, - 235, 236, 0, 237, 238, 239, 240, 241, 242, 0, - 243, 0, 244, 245, 246, 247, 0, 248, 249, 250, - 251, 252, 253, 254, 255, 256, 257, 258, 259, 0, - 260, 261, 262, 263, 264, 265, 266, 0, 267, 268, - 269, 270, 271, 272, 273, 274, 275, 276, 0, 277, - 0, 278, 279, 280, 281, 282, 283, 284, 285, 286, - 287, 288, 0, 0, 289, 290, 291, 292, 0, 293, - 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, - 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, - 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, - 324, 325, 326, 327, 328, 0, 329, 330, 331, 332, - 0, 795, 334, 335, 336, 337, 338, 0, 339, 340, - 0, 0, 341, 342, 343, 0, 0, 344, 345, 346, - 347, 348, 349, 797, 351, 352, 353, 354, 355, 356, - 357, 358, 359, 360, 361, 0, 0, 0, 0, 362, - 363, 798, 365, 366, 367, 368, 369, 370, 371, 0, - 372, 373, 374, 375, 376, 377, 0, 378, 379, 380, - 381, 382, 383, 384, 385, 386, 387, 0, 388, 389, - 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, - 400, 0, 401, 402, 403, 404, 405, 406, 407, 799, - 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, - 419, 420, 0, 0, 421, 422, 423, 424, 425, 426, - 427, 428, 429, 0, 430, 431, 432, 433, 434, 0, - 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, - 445, 446, 447, 448, 800, 0, 0, 450, 451, 0, - 452, 453, 454, 455, 456, 457, 458, 0, 459, 460, - 461, 0, 0, 462, 463, 801, 465, 802, 0, 467, - 468, 803, 470, 471, 472, 473, 474, 0, 0, 475, - 476, 477, 0, 478, 479, 480, 481, 0, 482, 483, - 484, 485, 486, 487, 488, 489, 0, 490, 491, 492, - 493, 494, 495, 496, 497, 498, 0, 0, 499, 0, - 0, 500, 501, 502, 503, 504, 505, 506, 507, 508, - 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, - 519, 520, 117, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 46, 0, - 0, 118, 119, 120, 121, 122, 123, 124, 125, 0, - 126, 127, 128, 0, 0, 0, 0, 0, 0, 0, - 0, 129, 130, 131, 0, 132, 133, 134, 135, 136, - 137, 138, 139, 140, 141, 142, 143, 0, 144, 145, - 146, 147, 148, 149, 0, 790, 150, 151, 152, 153, - 154, 155, 156, 0, 157, 158, 159, 160, 791, 0, - 792, 0, 163, 164, 165, 166, 167, 168, 169, 170, - 171, 172, 0, 173, 174, 175, 176, 177, 178, 0, - 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, - 189, 190, 191, 192, 193, 194, 0, 195, 0, 196, - 197, 198, 199, 200, 201, 0, 0, 202, 203, 204, - 205, 0, 0, 206, 207, 208, 209, 210, 0, 211, - 212, 213, 0, 214, 215, 216, 0, 217, 218, 219, - 220, 221, 222, 223, 224, 225, 226, 227, 793, 0, - 229, 0, 230, 231, 232, 233, 0, 234, 0, 235, - 236, 0, 237, 238, 239, 240, 241, 242, 0, 243, - 0, 244, 245, 246, 247, 0, 248, 249, 250, 251, - 252, 253, 254, 255, 256, 257, 258, 259, 0, 260, - 261, 262, 263, 264, 265, 266, 0, 267, 268, 269, - 270, 271, 272, 273, 274, 275, 276, 0, 277, 0, - 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, - 288, 0, 0, 289, 290, 291, 292, 0, 293, 294, - 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, - 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, - 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, - 325, 326, 327, 328, 0, 329, 330, 331, 332, 0, - 795, 334, 335, 336, 337, 338, 0, 339, 340, 0, - 0, 341, 342, 343, 0, 0, 344, 345, 346, 347, - 348, 349, 797, 351, 352, 353, 354, 355, 356, 357, - 358, 359, 360, 361, 0, 0, 0, 0, 362, 363, - 798, 365, 366, 367, 368, 369, 370, 371, 0, 372, - 373, 374, 375, 376, 377, 0, 378, 379, 380, 381, - 382, 383, 384, 385, 386, 387, 0, 388, 389, 390, - 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, - 0, 401, 402, 403, 404, 405, 406, 407, 408, 409, - 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, - 420, 0, 0, 421, 422, 423, 424, 425, 426, 427, - 428, 429, 0, 430, 431, 432, 433, 434, 0, 435, - 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, - 446, 447, 448, 800, 0, 0, 450, 451, 0, 452, - 453, 454, 455, 456, 457, 458, 0, 459, 460, 461, - 0, 0, 462, 463, 801, 465, 802, 0, 467, 468, - 803, 470, 471, 472, 473, 474, 0, 0, 475, 476, - 477, 0, 478, 479, 480, 481, 0, 482, 483, 484, - 485, 486, 487, 488, 489, 0, 490, 491, 492, 493, - 494, 495, 496, 497, 498, 0, 0, 499, 0, 0, - 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, - 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, - 520, 528, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 3393, 0, 0, - 118, 119, 120, 121, 122, 123, 124, 125, 0, 126, - 127, 128, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 130, 131, 0, 132, 133, 134, 0, 136, 137, - 138, 139, 140, 0, 142, 143, 0, 144, 145, 146, - 147, 148, 149, 0, 0, 150, 151, 152, 153, 154, - 155, 156, 0, 157, 158, 159, 160, 161, 0, 0, - 0, 163, 164, 165, 166, 167, 168, 0, 170, 171, - 172, 0, 173, 174, 175, 176, 177, 178, 0, 0, - 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, - 190, 191, 192, 193, 194, 0, 195, 0, 196, 197, - 198, 199, 200, 201, 14, 15, 202, 203, 204, 205, - 0, 0, 206, 207, 208, 209, 210, 0, 211, 212, - 213, 0, 214, 215, 216, 0, 217, 218, 219, 220, - 221, 222, 223, 224, 225, 226, 227, 228, 0, 229, - 0, 230, 231, 232, 233, 0, 234, 0, 235, 0, - 23, 0, 238, 239, 529, 0, 242, 0, 243, 0, - 244, 245, 246, 247, 0, 248, 249, 250, 251, 252, - 253, 254, 0, 256, 257, 258, 259, 0, 260, 261, - 262, 263, 264, 265, 266, 0, 267, 0, 269, 270, - 271, 272, 273, 274, 275, 276, 0, 277, 0, 278, - 0, 0, 281, 0, 283, 284, 285, 286, 287, 288, - 0, 0, 289, 0, 291, 0, 0, 293, 294, 295, - 296, 297, 298, 299, 300, 530, 302, 303, 304, 305, - 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, - 316, 317, 318, 319, 320, 321, 322, 0, 324, 325, - 326, 327, 328, 0, 329, 330, 0, 332, 0, 333, - 334, 335, 336, 337, 338, 0, 339, 340, 0, 0, - 341, 342, 343, 0, 0, 344, 345, 346, 0, 348, - 0, 350, 351, 352, 353, 354, 355, 356, 357, 358, - 359, 360, 361, 26, 27, 28, 0, 362, 363, 364, - 0, 366, 367, 368, 369, 370, 371, 0, 372, 373, - 374, 375, 376, 377, 0, 378, 379, 380, 381, 382, - 383, 384, 385, 386, 387, 0, 388, 389, 390, 391, - 392, 393, 394, 395, 396, 397, 398, 399, 400, 0, - 401, 402, 0, 404, 405, 406, 407, 408, 409, 410, - 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, - 33, 0, 421, 422, 423, 424, 425, 426, 427, 428, - 429, 35, 0, 431, 432, 433, 434, 0, 435, 436, - 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, - 531, 448, 449, 37, 0, 450, 451, 38, 452, 0, - 454, 455, 456, 457, 458, 0, 459, 460, 461, 0, - 0, 462, 463, 464, 465, 466, 0, 467, 468, 469, - 470, 471, 472, 473, 474, 0, 0, 475, 476, 477, - 40, 478, 479, 480, 481, 0, 482, 483, 484, 485, - 486, 804, 488, 489, 0, 490, 0, 492, 493, 494, - 495, 496, 497, 498, 0, 0, 499, 0, 44, 500, - 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, - 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, - 0, 528, 45, 554, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 46, 0, 0, 0, - 118, 119, 120, 121, 122, 123, 124, 125, 894, 126, - 127, 128, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 130, 131, 0, 132, 133, 134, 0, 136, 137, - 138, 139, 140, 0, 142, 143, 0, 144, 145, 146, - 147, 148, 149, 0, 0, 150, 151, 152, 153, 154, - 155, 156, 0, 157, 158, 159, 160, 161, 0, 0, - 0, 163, 164, 165, 166, 167, 168, 0, 170, 171, - 172, 0, 173, 174, 175, 176, 177, 178, 0, 0, - 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, - 190, 191, 192, 193, 194, 0, 195, 0, 196, 197, - 198, 199, 200, 201, 0, 0, 202, 203, 204, 205, - 0, 0, 206, 207, 208, 209, 210, 0, 211, 212, - 213, 0, 214, 215, 216, 0, 217, 218, 219, 220, - 221, 222, 223, 224, 225, 226, 227, 228, 0, 229, - 0, 230, 231, 232, 233, 0, 234, 0, 235, 0, - 23, 0, 238, 239, 529, 0, 242, 0, 243, 0, - 244, 245, 246, 247, 0, 248, 249, 250, 251, 252, - 253, 254, 0, 256, 257, 258, 259, 0, 260, 261, - 262, 263, 264, 265, 266, 0, 267, 0, 269, 270, - 271, 272, 273, 274, 275, 276, 0, 277, 0, 278, - 0, 0, 281, 0, 283, 284, 285, 286, 287, 288, - 0, 0, 289, 0, 291, 0, 0, 293, 294, 295, - 296, 297, 298, 299, 300, 530, 302, 303, 304, 305, - 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, - 316, 317, 318, 319, 320, 321, 322, 0, 324, 325, - 326, 327, 328, 0, 329, 330, 0, 332, 0, 333, - 334, 335, 336, 337, 338, 0, 339, 340, 0, 0, - 341, 342, 343, 0, 0, 344, 345, 346, 0, 348, - 0, 350, 351, 352, 353, 354, 355, 356, 357, 358, - 359, 360, 361, 26, 27, 28, 0, 362, 363, 364, - 0, 366, 367, 368, 369, 370, 371, 0, 372, 373, - 374, 375, 376, 377, 0, 378, 379, 380, 381, 382, - 383, 384, 385, 386, 387, 0, 388, 389, 390, 391, - 392, 393, 394, 395, 396, 397, 398, 399, 400, 0, - 401, 402, 0, 404, 405, 406, 407, 408, 409, 410, - 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, - 33, 0, 421, 422, 423, 424, 425, 426, 427, 428, - 429, 0, 0, 431, 432, 433, 434, 0, 435, 436, - 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, - 531, 448, 449, 0, 0, 450, 451, 38, 452, 0, - 454, 455, 456, 457, 458, 0, 459, 895, 461, 0, - 0, 896, 463, 464, 465, 466, 0, 467, 468, 469, - 470, 471, 472, 473, 474, 0, 0, 475, 476, 477, - 40, 478, 479, 480, 481, 0, 482, 483, 484, 485, - 486, 804, 488, 489, 0, 490, 0, 492, 493, 494, - 495, 496, 497, 498, 0, 0, 499, 0, 44, 500, - 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, - 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, - 0, 528, 45, 554, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 46, 0, 0, 0, - 118, 119, 120, 121, 122, 123, 124, 125, 0, 126, - 127, 128, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 130, 131, 0, 132, 133, 134, 0, 136, 137, - 138, 139, 140, 0, 142, 143, 0, 144, 145, 146, - 147, 148, 149, 0, 0, 150, 151, 152, 153, 154, - 155, 156, 0, 157, 158, 159, 160, 161, 0, 0, - 0, 163, 164, 165, 166, 167, 168, 0, 170, 171, - 172, 0, 173, 174, 175, 176, 177, 178, 0, 0, - 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, - 190, 191, 192, 193, 194, 0, 195, 0, 196, 197, - 198, 199, 200, 201, 0, 0, 202, 203, 204, 205, - 0, 0, 206, 207, 208, 209, 210, 0, 211, 212, - 213, 0, 214, 215, 216, 0, 217, 218, 219, 220, - 221, 222, 223, 224, 225, 226, 227, 228, 0, 229, - 0, 230, 231, 232, 233, 0, 234, 0, 235, 0, - 23, 0, 238, 239, 529, 0, 242, 0, 243, 0, - 244, 245, 246, 247, 0, 248, 249, 250, 251, 252, - 253, 254, 0, 256, 257, 258, 259, 0, 260, 261, - 262, 263, 264, 265, 266, 0, 267, 0, 269, 270, - 271, 272, 273, 274, 275, 276, 0, 277, 0, 278, - 0, 0, 281, 0, 283, 284, 285, 286, 287, 288, - 0, 0, 289, 0, 291, 0, 0, 293, 294, 295, - 296, 297, 298, 299, 300, 530, 302, 303, 304, 305, - 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, - 316, 317, 318, 319, 320, 321, 322, 0, 324, 325, - 326, 327, 328, 0, 329, 330, 0, 332, 0, 333, - 334, 335, 336, 337, 338, 0, 339, 340, 0, 0, - 341, 342, 343, 0, 0, 344, 345, 346, 0, 348, - 0, 350, 351, 352, 353, 354, 355, 356, 357, 358, - 359, 360, 361, 26, 27, 28, 0, 362, 363, 364, - 0, 366, 367, 368, 369, 370, 371, 0, 372, 373, - 374, 375, 376, 377, 0, 378, 379, 380, 381, 382, - 383, 384, 385, 386, 387, 0, 388, 389, 390, 391, - 392, 393, 394, 395, 396, 397, 398, 399, 400, 0, - 401, 402, 0, 404, 405, 406, 407, 408, 409, 410, - 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, - 33, 0, 421, 422, 423, 424, 425, 426, 427, 428, - 429, 0, 0, 431, 432, 433, 434, 0, 435, 436, - 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, - 531, 448, 449, 0, 0, 450, 451, 38, 452, 0, - 454, 455, 456, 457, 458, 0, 459, 460, 461, 0, - 0, 462, 463, 464, 465, 466, 0, 467, 468, 469, - 470, 471, 472, 473, 474, 0, 0, 475, 476, 477, - 40, 478, 479, 480, 481, 0, 482, 483, 484, 485, - 486, 804, 488, 489, 0, 490, 0, 492, 493, 494, - 495, 496, 497, 498, 0, 0, 499, 0, 44, 500, - 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, - 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, - 0, 528, 45, 554, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 46, 0, 0, 0, - 118, 119, 120, 121, 122, 123, 124, 125, 0, 126, - 127, 128, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 130, 131, 0, 132, 133, 134, 0, 136, 137, - 138, 139, 140, 0, 142, 143, 0, 144, 145, 146, - 147, 148, 149, 0, 0, 150, 151, 152, 153, 154, - 155, 156, 0, 157, 158, 159, 160, 161, 0, 0, - 0, 163, 164, 165, 166, 167, 168, 0, 170, 171, - 172, 0, 173, 174, 175, 176, 177, 178, 0, 0, - 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, - 190, 191, 192, 193, 194, 0, 195, 0, 196, 197, - 198, 199, 200, 201, 0, 0, 202, 203, 204, 205, - 0, 0, 206, 207, 208, 209, 210, 0, 211, 212, - 213, 0, 214, 215, 216, 0, 217, 218, 219, 220, - 221, 222, 223, 224, 225, 226, 227, 228, 0, 229, - 0, 230, 231, 232, 233, 0, 234, 0, 235, 0, - 0, 0, 238, 239, 529, 0, 242, 0, 243, 0, - 244, 245, 246, 247, 0, 248, 249, 250, 251, 252, - 253, 254, 0, 256, 257, 258, 259, 0, 260, 261, - 262, 263, 264, 265, 266, 0, 267, 0, 269, 270, - 271, 272, 273, 274, 275, 276, 0, 277, 0, 278, - 0, 0, 281, 0, 283, 284, 285, 286, 287, 288, - 0, 0, 289, 0, 291, 0, 0, 293, 294, 295, - 296, 297, 298, 299, 300, 530, 302, 303, 304, 305, - 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, - 316, 317, 318, 319, 320, 321, 322, 0, 324, 325, - 326, 327, 328, 0, 329, 330, 0, 332, 0, 333, - 334, 335, 336, 337, 338, 0, 339, 340, 0, 0, - 341, 342, 343, 0, 0, 344, 345, 346, 0, 348, - 0, 350, 351, 352, 353, 354, 355, 356, 357, 358, - 359, 360, 361, 0, 0, 0, 0, 362, 363, 364, - 0, 366, 367, 368, 369, 370, 371, 0, 372, 373, - 374, 375, 376, 377, 0, 378, 379, 380, 381, 382, - 383, 384, 385, 386, 387, 0, 388, 389, 390, 391, - 392, 393, 394, 395, 396, 397, 398, 399, 400, 0, - 401, 402, 0, 404, 405, 406, 407, 408, 409, 410, - 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, - 0, 0, 421, 422, 423, 424, 425, 426, 427, 428, - 429, 0, 0, 431, 432, 433, 434, 0, 435, 436, - 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, - 531, 448, 449, 0, 0, 450, 451, 0, 452, 0, - 454, 455, 456, 457, 458, 0, 459, 460, 461, 0, - 0, 462, 463, 464, 465, 466, 0, 467, 468, 469, - 470, 471, 472, 473, 474, 0, 0, 475, 476, 477, - 0, 478, 479, 480, 481, 0, 482, 483, 484, 485, - 486, 487, 488, 489, 0, 490, 0, 492, 493, 494, - 495, 496, 497, 498, 0, 0, 499, 0, 0, 500, - 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, - 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, - 528, 0, 554, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 994, 0, 0, 118, - 119, 120, 121, 122, 123, 124, 125, 0, 126, 127, - 128, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 130, 131, 0, 132, 133, 134, 0, 136, 137, 138, - 139, 140, 0, 142, 143, 0, 144, 145, 146, 147, - 148, 149, 0, 0, 150, 151, 152, 153, 154, 155, - 156, 0, 157, 158, 159, 160, 161, 0, 0, 0, - 163, 164, 165, 166, 167, 168, 0, 170, 171, 172, - 0, 173, 174, 175, 176, 177, 178, 0, 0, 180, - 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, - 191, 192, 193, 194, 0, 195, 0, 196, 197, 198, - 199, 200, 201, 0, 0, 202, 203, 204, 205, 0, - 0, 206, 207, 208, 209, 210, 0, 211, 212, 213, - 0, 214, 215, 216, 0, 217, 218, 219, 220, 221, - 222, 223, 224, 225, 226, 227, 228, 0, 229, 0, - 230, 231, 232, 233, 0, 234, 0, 235, 0, 0, - 0, 238, 239, 529, 0, 242, 0, 243, 0, 244, - 245, 246, 247, 0, 248, 249, 250, 251, 252, 253, - 254, 0, 256, 257, 258, 259, 0, 260, 261, 262, - 263, 264, 265, 266, 0, 267, 0, 269, 270, 271, - 272, 273, 274, 275, 276, 0, 277, 0, 278, 0, - 0, 281, 0, 283, 284, 285, 286, 287, 288, 0, - 0, 289, 0, 291, 0, 0, 293, 294, 295, 296, - 297, 298, 299, 300, 530, 302, 303, 304, 305, 306, - 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, - 317, 318, 319, 320, 321, 322, 0, 324, 325, 326, - 327, 328, 0, 329, 330, 0, 332, 0, 333, 334, - 335, 336, 337, 338, 0, 339, 340, 0, 0, 341, - 342, 343, 0, 0, 344, 345, 346, 0, 348, 0, - 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, - 360, 361, 0, 0, 0, 0, 362, 363, 364, 0, - 366, 367, 368, 369, 370, 371, 0, 372, 373, 374, - 375, 376, 377, 0, 378, 379, 380, 381, 382, 383, - 384, 385, 386, 387, 0, 388, 389, 390, 391, 392, - 393, 394, 395, 396, 397, 398, 399, 400, 0, 401, - 402, 0, 404, 405, 406, 407, 408, 409, 410, 411, - 412, 413, 414, 415, 416, 417, 418, 419, 420, 0, - 0, 421, 422, 423, 424, 425, 426, 427, 428, 429, - 0, 0, 431, 432, 433, 434, 0, 435, 436, 437, - 438, 439, 440, 441, 442, 443, 444, 445, 446, 531, - 448, 449, 0, 0, 450, 451, 0, 452, 0, 454, - 455, 456, 457, 458, 0, 459, 460, 461, 0, 0, - 462, 463, 464, 465, 466, 0, 467, 468, 469, 470, - 471, 472, 473, 474, 0, 0, 475, 476, 477, 0, - 478, 479, 480, 481, 0, 482, 483, 484, 485, 486, - 487, 488, 489, 0, 490, 0, 492, 493, 494, 495, - 496, 497, 498, 0, 0, 499, 0, 0, 500, 501, - 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, - 512, 513, 514, 515, 516, 517, 518, 519, 520, 528, - 0, 554, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 1492, 0, 0, 118, 119, - 120, 121, 122, 123, 124, 125, 0, 126, 127, 128, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 130, - 131, 0, 132, 133, 134, 0, 136, 137, 138, 139, - 140, 0, 142, 143, 0, 144, 145, 146, 147, 148, - 149, 0, 0, 150, 151, 152, 153, 154, 155, 156, - 0, 157, 158, 159, 160, 161, 0, 0, 0, 163, - 164, 165, 166, 167, 168, 0, 170, 171, 172, 0, - 173, 174, 175, 176, 177, 178, 0, 0, 180, 181, - 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, - 192, 193, 194, 0, 195, 0, 196, 197, 198, 199, - 200, 201, 0, 0, 202, 203, 204, 205, 0, 0, - 206, 207, 208, 209, 210, 0, 211, 212, 213, 0, - 214, 215, 216, 0, 217, 218, 219, 220, 221, 222, - 223, 224, 225, 226, 227, 228, 0, 229, 0, 230, - 231, 232, 233, 0, 234, 0, 235, 0, 0, 0, - 238, 239, 529, 0, 242, 0, 243, 0, 244, 245, - 246, 247, 0, 248, 249, 250, 251, 252, 253, 254, - 0, 256, 257, 258, 259, 0, 260, 261, 262, 263, - 264, 265, 266, 0, 267, 0, 269, 270, 271, 272, - 273, 274, 275, 276, 0, 277, 0, 278, 0, 0, - 281, 0, 283, 284, 285, 286, 287, 288, 0, 0, - 289, 0, 291, 0, 0, 293, 294, 295, 296, 297, - 298, 299, 300, 530, 302, 303, 304, 305, 306, 307, - 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, - 318, 319, 320, 321, 322, 0, 324, 325, 326, 327, - 328, 0, 329, 330, 0, 332, 0, 333, 334, 335, - 336, 337, 338, 0, 339, 340, 0, 0, 341, 342, - 343, 0, 0, 344, 345, 346, 0, 348, 0, 350, - 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, - 361, 0, 0, 0, 0, 362, 363, 364, 0, 366, - 367, 368, 369, 370, 371, 0, 372, 373, 374, 375, - 376, 377, 0, 378, 379, 380, 381, 382, 383, 384, - 385, 386, 387, 0, 388, 389, 390, 391, 392, 393, - 394, 395, 396, 397, 398, 399, 400, 0, 401, 402, - 0, 404, 405, 406, 407, 408, 409, 410, 411, 412, - 413, 414, 415, 416, 417, 418, 419, 420, 0, 0, - 421, 422, 423, 424, 425, 426, 427, 428, 429, 0, - 0, 431, 432, 433, 434, 0, 435, 436, 437, 438, - 439, 440, 441, 442, 443, 444, 445, 446, 531, 448, - 449, 0, 0, 450, 451, 0, 452, 0, 454, 455, - 456, 457, 458, 0, 459, 460, 461, 0, 0, 462, - 463, 464, 465, 466, 0, 467, 468, 469, 470, 471, - 472, 473, 474, 0, 0, 475, 476, 477, 0, 478, - 479, 480, 481, 0, 482, 483, 484, 485, 486, 487, - 488, 489, 0, 490, 0, 492, 493, 494, 495, 496, - 497, 498, 0, 0, 499, 0, 0, 500, 501, 502, - 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, - 513, 514, 515, 516, 517, 518, 519, 520, 528, 0, - 554, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 2099, 0, 0, 118, 119, 120, - 121, 122, 123, 124, 125, 0, 126, 127, 128, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 130, 131, - 0, 132, 133, 134, 0, 136, 137, 138, 139, 140, - 0, 142, 143, 0, 144, 145, 146, 147, 148, 149, - 0, 0, 150, 151, 152, 153, 154, 155, 156, 0, - 157, 158, 159, 160, 161, 0, 0, 0, 163, 164, - 165, 166, 167, 168, 0, 170, 171, 172, 0, 173, - 174, 175, 176, 177, 178, 0, 0, 180, 181, 182, - 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, - 193, 194, 0, 195, 0, 196, 197, 198, 199, 200, - 201, 0, 0, 202, 203, 204, 205, 0, 0, 206, - 207, 208, 209, 210, 0, 211, 212, 213, 0, 214, - 215, 216, 0, 217, 218, 219, 220, 221, 222, 223, - 224, 225, 226, 227, 228, 0, 229, 0, 230, 231, - 232, 233, 0, 234, 0, 235, 0, 0, 0, 238, - 239, 529, 0, 242, 0, 243, 0, 244, 245, 246, - 247, 0, 248, 249, 250, 251, 252, 253, 254, 0, - 256, 257, 258, 259, 0, 260, 261, 262, 263, 264, - 265, 266, 0, 267, 0, 269, 270, 271, 272, 273, - 274, 275, 276, 0, 277, 0, 278, 0, 0, 281, - 0, 283, 284, 285, 286, 287, 288, 0, 0, 289, - 0, 291, 0, 0, 293, 294, 295, 296, 297, 298, - 299, 300, 530, 302, 303, 304, 305, 306, 307, 308, - 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, - 319, 320, 321, 322, 0, 324, 325, 326, 327, 328, - 0, 329, 330, 0, 332, 0, 333, 334, 335, 336, - 337, 338, 0, 339, 340, 0, 0, 341, 342, 343, - 0, 0, 344, 345, 346, 0, 348, 0, 350, 351, - 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, - 0, 0, 0, 0, 362, 363, 364, 0, 366, 367, - 368, 369, 370, 371, 0, 372, 373, 374, 375, 376, - 377, 0, 378, 379, 380, 381, 382, 383, 384, 385, - 386, 387, 0, 388, 389, 390, 391, 392, 393, 394, - 395, 396, 397, 398, 399, 400, 0, 401, 402, 0, - 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, - 414, 415, 416, 417, 418, 419, 420, 0, 0, 421, - 422, 423, 424, 425, 426, 427, 428, 429, 0, 0, - 431, 432, 433, 434, 0, 435, 436, 437, 438, 439, - 440, 441, 442, 443, 444, 445, 446, 531, 448, 449, - 0, 0, 450, 451, 0, 452, 0, 454, 455, 456, - 457, 458, 0, 459, 460, 461, 0, 0, 462, 463, - 464, 465, 466, 0, 467, 468, 469, 470, 471, 472, - 473, 474, 0, 0, 475, 476, 477, 0, 478, 479, - 480, 481, 0, 482, 483, 484, 485, 486, 487, 488, - 489, 0, 490, 0, 492, 493, 494, 495, 496, 497, - 498, 0, 0, 499, 0, 0, 500, 501, 502, 503, - 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, - 514, 515, 516, 517, 518, 519, 520, 528, 0, 554, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 2246, 0, 0, 118, 119, 120, 121, - 122, 123, 124, 125, 0, 126, 127, 128, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 130, 131, 0, - 132, 133, 134, 0, 136, 137, 138, 139, 140, 0, - 142, 143, 0, 144, 145, 146, 147, 148, 149, 0, - 0, 150, 151, 152, 153, 154, 155, 156, 0, 157, - 158, 159, 160, 161, 0, 0, 0, 163, 164, 165, - 166, 167, 168, 0, 170, 171, 172, 0, 173, 174, - 175, 176, 177, 178, 0, 0, 180, 181, 182, 183, - 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, - 194, 0, 195, 0, 196, 197, 198, 199, 200, 201, - 0, 0, 202, 203, 204, 205, 0, 0, 206, 207, - 208, 209, 210, 0, 211, 212, 213, 0, 214, 215, - 216, 0, 217, 218, 219, 220, 221, 222, 223, 224, - 225, 226, 227, 228, 0, 229, 0, 230, 231, 232, - 233, 0, 234, 0, 235, 0, 0, 0, 238, 239, - 529, 0, 242, 0, 243, 0, 244, 245, 246, 247, - 0, 248, 249, 250, 251, 252, 253, 254, 0, 256, - 257, 258, 259, 0, 260, 261, 262, 263, 264, 265, - 266, 0, 267, 0, 269, 270, 271, 272, 273, 274, - 275, 276, 0, 277, 0, 278, 0, 0, 281, 0, - 283, 284, 285, 286, 287, 288, 0, 0, 289, 0, - 291, 0, 0, 293, 294, 295, 296, 297, 298, 299, - 300, 530, 302, 303, 304, 305, 306, 307, 308, 309, - 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, - 320, 321, 322, 0, 324, 325, 326, 327, 328, 0, - 329, 330, 0, 332, 0, 333, 334, 335, 336, 337, - 338, 0, 339, 340, 0, 0, 341, 342, 343, 0, - 0, 344, 345, 346, 0, 348, 0, 350, 351, 352, - 353, 354, 355, 356, 357, 358, 359, 360, 361, 0, - 0, 0, 0, 362, 363, 364, 0, 366, 367, 368, - 369, 370, 371, 0, 372, 373, 374, 375, 376, 377, - 0, 378, 379, 380, 381, 382, 383, 384, 385, 386, - 387, 0, 388, 389, 390, 391, 392, 393, 394, 395, - 396, 397, 398, 399, 400, 0, 401, 402, 0, 404, - 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, - 415, 416, 417, 418, 419, 420, 0, 0, 421, 422, - 423, 424, 425, 426, 427, 428, 429, 0, 0, 431, - 432, 433, 434, 0, 435, 436, 437, 438, 439, 440, - 441, 442, 443, 444, 445, 446, 531, 448, 449, 0, - 0, 450, 451, 0, 452, 0, 454, 455, 456, 457, - 458, 0, 459, 460, 461, 0, 0, 462, 463, 464, - 465, 466, 0, 467, 468, 469, 470, 471, 472, 473, - 474, 0, 0, 475, 476, 477, 0, 478, 479, 480, - 481, 0, 482, 483, 484, 485, 486, 487, 488, 489, - 0, 490, 0, 492, 493, 494, 495, 496, 497, 498, - 0, 0, 499, 0, 0, 500, 501, 502, 503, 504, - 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, - 515, 516, 517, 518, 519, 520, 528, 0, 554, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 2490, 0, 0, 118, 119, 120, 121, 122, - 123, 124, 125, 0, 126, 127, 128, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 130, 131, 0, 132, - 133, 134, 0, 136, 137, 138, 139, 140, 0, 142, - 143, 0, 144, 145, 146, 147, 148, 149, 0, 0, - 150, 151, 152, 153, 154, 155, 156, 0, 157, 158, - 159, 160, 161, 0, 0, 0, 163, 164, 165, 166, - 167, 168, 0, 170, 171, 172, 0, 173, 174, 175, - 176, 177, 178, 0, 0, 180, 181, 182, 183, 184, - 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, - 0, 195, 0, 196, 197, 198, 199, 200, 201, 0, - 0, 202, 203, 204, 205, 0, 0, 206, 207, 208, - 209, 210, 0, 211, 212, 213, 0, 214, 215, 216, - 0, 217, 218, 219, 220, 221, 222, 223, 224, 225, - 226, 227, 228, 0, 229, 0, 230, 231, 232, 233, - 0, 234, 0, 235, 0, 0, 0, 238, 239, 529, - 0, 242, 0, 243, 0, 244, 245, 246, 247, 0, - 248, 249, 250, 251, 252, 253, 254, 0, 256, 257, - 258, 259, 0, 260, 261, 262, 263, 264, 265, 266, - 0, 267, 0, 269, 270, 271, 272, 273, 274, 275, - 276, 0, 277, 0, 278, 0, 0, 281, 0, 283, - 284, 285, 286, 287, 288, 0, 0, 289, 0, 291, - 0, 0, 293, 294, 295, 296, 297, 298, 299, 300, - 530, 302, 303, 304, 305, 306, 307, 308, 309, 310, - 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, - 321, 322, 0, 324, 325, 326, 327, 328, 0, 329, - 330, 0, 332, 0, 333, 334, 335, 336, 337, 338, - 0, 339, 340, 0, 0, 341, 342, 343, 0, 0, - 344, 345, 346, 0, 348, 0, 350, 351, 352, 353, - 354, 355, 356, 357, 358, 359, 360, 361, 0, 0, - 0, 0, 362, 363, 364, 0, 366, 367, 368, 369, - 370, 371, 0, 372, 373, 374, 375, 376, 377, 0, - 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, - 0, 388, 389, 390, 391, 392, 393, 394, 395, 396, - 397, 398, 399, 400, 0, 401, 402, 0, 404, 405, - 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, - 416, 417, 418, 419, 420, 0, 0, 421, 422, 423, - 424, 425, 426, 427, 428, 429, 0, 0, 431, 432, - 433, 434, 0, 435, 436, 437, 438, 439, 440, 441, - 442, 443, 444, 445, 446, 531, 448, 449, 0, 0, - 450, 451, 0, 452, 0, 454, 455, 456, 457, 458, - 0, 459, 460, 461, 0, 0, 462, 463, 464, 465, - 466, 0, 467, 468, 469, 470, 471, 472, 473, 474, - 0, 0, 475, 476, 477, 0, 478, 479, 480, 481, - 0, 482, 483, 484, 485, 486, 487, 488, 489, 0, - 490, 0, 492, 493, 494, 495, 496, 497, 498, 0, - 0, 499, 0, 0, 500, 501, 502, 503, 504, 505, - 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, - 516, 517, 518, 519, 520, 528, 0, 554, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 2631, 0, 0, 118, 119, 120, 121, 122, 123, - 124, 125, 0, 126, 127, 128, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 130, 131, 0, 132, 133, - 134, 0, 136, 137, 138, 139, 140, 0, 142, 143, - 0, 144, 145, 146, 147, 148, 149, 0, 0, 150, - 151, 152, 153, 154, 155, 156, 0, 157, 158, 159, - 160, 161, 0, 0, 0, 163, 164, 165, 166, 167, - 168, 0, 170, 171, 172, 0, 173, 174, 175, 176, - 177, 178, 0, 0, 180, 181, 182, 183, 184, 185, - 186, 187, 188, 189, 190, 191, 192, 193, 194, 0, - 195, 0, 196, 197, 198, 199, 200, 201, 0, 0, - 202, 203, 204, 205, 0, 0, 206, 207, 208, 209, - 210, 0, 211, 212, 213, 0, 214, 215, 216, 0, - 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, - 227, 228, 0, 229, 0, 230, 231, 232, 233, 0, - 234, 0, 235, 0, 0, 0, 238, 239, 529, 0, - 242, 0, 243, 0, 244, 245, 246, 247, 0, 248, - 249, 250, 251, 252, 253, 254, 0, 256, 257, 258, - 259, 0, 260, 261, 262, 263, 264, 265, 266, 0, - 267, 0, 269, 270, 271, 272, 273, 274, 275, 276, - 0, 277, 0, 278, 0, 0, 281, 0, 283, 284, - 285, 286, 287, 288, 0, 0, 289, 0, 291, 0, - 0, 293, 294, 295, 296, 297, 298, 299, 300, 530, - 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, - 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, - 322, 0, 324, 325, 326, 327, 328, 0, 329, 330, - 0, 332, 0, 333, 334, 335, 336, 337, 338, 0, - 339, 340, 0, 0, 341, 342, 343, 0, 0, 344, - 345, 346, 0, 348, 0, 350, 351, 352, 353, 354, - 355, 356, 357, 358, 359, 360, 361, 0, 0, 0, - 0, 362, 363, 364, 0, 366, 367, 368, 369, 370, - 371, 0, 372, 373, 374, 375, 376, 377, 0, 378, - 379, 380, 381, 382, 383, 384, 385, 386, 387, 0, - 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, - 398, 399, 400, 0, 401, 402, 0, 404, 405, 406, - 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, - 417, 418, 419, 420, 0, 0, 421, 422, 423, 424, - 425, 426, 427, 428, 429, 0, 0, 431, 432, 433, - 434, 0, 435, 436, 437, 438, 439, 440, 441, 442, - 443, 444, 445, 446, 531, 448, 449, 0, 0, 450, - 451, 0, 452, 0, 454, 455, 456, 457, 458, 0, - 459, 460, 461, 0, 0, 462, 463, 464, 465, 466, - 0, 467, 468, 469, 470, 471, 472, 473, 474, 0, - 0, 475, 476, 477, 0, 478, 479, 480, 481, 0, - 482, 483, 484, 485, 486, 487, 488, 489, 0, 490, - 0, 492, 493, 494, 495, 496, 497, 498, 0, 0, - 499, 0, 0, 500, 501, 502, 503, 504, 505, 506, - 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, - 517, 518, 519, 520, 528, 0, 554, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 2844, 0, 0, 118, 119, 120, 121, 122, 123, 124, - 125, 0, 126, 127, 128, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 130, 131, 0, 132, 133, 134, - 0, 136, 137, 138, 139, 140, 0, 142, 143, 0, - 144, 145, 146, 147, 148, 149, 0, 0, 150, 151, - 152, 153, 154, 155, 156, 0, 157, 158, 159, 160, - 161, 0, 0, 0, 163, 164, 165, 166, 167, 168, - 0, 170, 171, 172, 0, 173, 174, 175, 176, 177, - 178, 0, 0, 180, 181, 182, 183, 184, 185, 186, - 187, 188, 189, 190, 191, 192, 193, 194, 0, 195, - 0, 196, 197, 198, 199, 200, 201, 0, 0, 202, - 203, 204, 205, 0, 0, 206, 207, 208, 209, 210, - 0, 211, 212, 213, 0, 214, 215, 216, 0, 217, - 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, - 228, 0, 229, 0, 230, 231, 232, 233, 0, 234, - 0, 235, 0, 0, 0, 238, 239, 529, 0, 242, - 0, 243, 0, 244, 245, 246, 247, 0, 248, 249, - 250, 251, 252, 253, 254, 0, 256, 257, 258, 259, - 0, 260, 261, 262, 263, 264, 265, 266, 0, 267, - 0, 269, 270, 271, 272, 273, 274, 275, 276, 0, - 277, 0, 278, 0, 0, 281, 0, 283, 284, 285, - 286, 287, 288, 0, 0, 289, 0, 291, 0, 0, - 293, 294, 295, 296, 297, 298, 299, 300, 530, 302, - 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, - 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, - 0, 324, 325, 326, 327, 328, 0, 329, 330, 0, - 332, 0, 333, 334, 335, 336, 337, 338, 0, 339, - 340, 0, 0, 341, 342, 343, 0, 0, 344, 345, - 346, 0, 348, 0, 350, 351, 352, 353, 354, 355, - 356, 357, 358, 359, 360, 361, 0, 0, 0, 0, - 362, 363, 364, 0, 366, 367, 368, 369, 370, 371, - 0, 372, 373, 374, 375, 376, 377, 0, 378, 379, - 380, 381, 382, 383, 384, 385, 386, 387, 0, 388, - 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, - 399, 400, 0, 401, 402, 0, 404, 405, 406, 407, - 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, - 418, 419, 420, 0, 0, 421, 422, 423, 424, 425, - 426, 427, 428, 429, 0, 0, 431, 432, 433, 434, - 0, 435, 436, 437, 438, 439, 440, 441, 442, 443, - 444, 445, 446, 531, 448, 449, 0, 0, 450, 451, - 0, 452, 0, 454, 455, 456, 457, 458, 0, 459, - 460, 461, 0, 0, 462, 463, 464, 465, 466, 0, - 467, 468, 469, 470, 471, 472, 473, 474, 0, 0, - 475, 476, 477, 0, 478, 479, 480, 481, 0, 482, - 483, 484, 485, 486, 487, 488, 489, 0, 490, 0, - 492, 493, 494, 495, 496, 497, 498, 0, 0, 499, - 0, 0, 500, 501, 502, 503, 504, 505, 506, 507, - 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, - 518, 519, 520, 528, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 3299, - 0, 0, 118, 119, 120, 121, 122, 123, 124, 125, - 0, 126, 127, 128, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 130, 131, 0, 132, 133, 134, 0, - 136, 137, 138, 139, 140, 0, 142, 143, 0, 144, - 145, 146, 147, 148, 149, 0, 0, 150, 151, 152, - 153, 154, 155, 156, 0, 157, 158, 159, 160, 161, - 0, 0, 0, 163, 164, 165, 166, 167, 168, 0, - 170, 171, 172, 0, 173, 174, 175, 176, 177, 178, - 0, 0, 180, 181, 182, 183, 184, 185, 186, 187, - 188, 189, 190, 191, 192, 193, 194, 0, 195, 0, - 196, 197, 198, 199, 200, 201, 0, 0, 202, 203, - 204, 205, 0, 0, 206, 207, 208, 209, 210, 0, - 211, 212, 213, 0, 214, 215, 216, 0, 217, 218, - 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, - 0, 229, 0, 230, 231, 232, 233, 0, 234, 0, - 235, 0, 0, 0, 238, 239, 529, 0, 242, 0, - 243, 0, 244, 245, 246, 247, 0, 248, 249, 250, - 251, 252, 253, 254, 0, 256, 257, 258, 259, 0, - 260, 261, 262, 263, 264, 265, 266, 0, 267, 0, - 269, 270, 271, 272, 273, 274, 275, 276, 0, 277, - 0, 278, 0, 0, 281, 0, 283, 284, 285, 286, - 287, 288, 0, 0, 289, 0, 291, 0, 0, 293, - 294, 295, 296, 297, 298, 299, 300, 530, 302, 303, - 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, - 314, 315, 316, 317, 318, 319, 320, 321, 322, 0, - 324, 325, 326, 327, 328, 0, 329, 330, 0, 332, - 0, 333, 334, 335, 336, 337, 338, 0, 339, 340, - 0, 0, 341, 342, 343, 0, 0, 344, 345, 346, - 0, 348, 0, 350, 351, 352, 353, 354, 355, 356, - 357, 358, 359, 360, 361, 0, 0, 0, 0, 362, - 363, 364, 0, 366, 367, 368, 369, 370, 371, 0, - 372, 373, 374, 375, 376, 377, 0, 378, 379, 380, - 381, 382, 383, 384, 385, 386, 387, 0, 388, 389, - 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, - 400, 0, 401, 402, 0, 404, 405, 406, 407, 408, - 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, - 419, 420, 0, 0, 421, 422, 423, 424, 425, 426, - 427, 428, 429, 0, 0, 431, 432, 433, 434, 0, - 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, - 445, 446, 531, 448, 449, 0, 0, 450, 451, 0, - 452, 0, 454, 455, 456, 457, 458, 0, 459, 460, - 461, 0, 0, 462, 463, 464, 465, 466, 0, 467, - 468, 469, 470, 471, 472, 473, 474, 0, 0, 475, - 476, 477, 0, 478, 479, 480, 481, 0, 482, 483, - 484, 485, 486, 487, 488, 489, 0, 490, 0, 492, - 493, 494, 495, 496, 497, 498, 0, 0, 499, 0, - 0, 500, 501, 502, 503, 504, 505, 506, 507, 508, - 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, - 519, 520, 528, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 2206, 0, - 0, 118, 119, 120, 121, 122, 123, 124, 125, 0, - 126, 127, 128, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 130, 131, 0, 132, 133, 134, 0, 136, - 137, 138, 139, 140, 0, 142, 143, 0, 144, 145, - 146, 147, 148, 149, 0, 0, 150, 151, 152, 153, - 154, 155, 156, 0, 157, 158, 159, 160, 161, 0, - 0, 0, 163, 164, 165, 166, 167, 168, 0, 170, - 171, 172, 0, 173, 174, 175, 176, 177, 178, 0, - 0, 180, 181, 182, 183, 184, 185, 186, 187, 188, - 189, 190, 191, 192, 193, 194, 0, 195, 0, 196, - 197, 198, 199, 200, 201, 0, 0, 202, 203, 204, - 205, 0, 0, 206, 207, 208, 209, 210, 0, 211, - 212, 213, 0, 214, 215, 216, 0, 217, 218, 219, - 220, 221, 222, 223, 224, 225, 226, 227, 228, 0, - 229, 0, 230, 231, 232, 233, 0, 234, 0, 235, - 0, 0, 0, 238, 239, 529, 0, 242, 0, 243, - 0, 244, 245, 246, 247, 0, 248, 249, 250, 251, - 252, 253, 254, 0, 256, 257, 258, 259, 0, 260, - 261, 262, 263, 264, 265, 266, 0, 267, 0, 269, - 270, 271, 272, 273, 274, 275, 276, 0, 277, 0, - 278, 0, 0, 281, 0, 283, 284, 285, 286, 287, - 288, 0, 0, 289, 0, 291, 0, 0, 293, 294, - 295, 296, 297, 298, 299, 300, 530, 302, 303, 304, - 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, - 315, 316, 317, 318, 319, 320, 321, 322, 0, 324, - 325, 326, 327, 328, 0, 329, 330, 0, 332, 0, - 333, 334, 335, 336, 337, 338, 0, 339, 340, 0, - 0, 341, 342, 343, 0, 0, 344, 345, 346, 0, - 348, 0, 350, 351, 352, 353, 354, 355, 356, 357, - 358, 359, 360, 361, 0, 0, 0, 0, 362, 363, - 364, 0, 366, 367, 368, 369, 370, 371, 0, 372, - 373, 374, 375, 376, 377, 0, 378, 379, 380, 381, - 382, 383, 384, 385, 386, 387, 0, 388, 389, 390, - 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, - 0, 401, 402, 0, 404, 405, 406, 407, 408, 409, - 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, - 420, 0, 0, 421, 422, 423, 424, 425, 426, 427, - 428, 429, 0, 0, 431, 432, 433, 434, 0, 435, - 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, - 446, 531, 448, 449, 0, 0, 450, 451, 0, 452, - 0, 454, 455, 456, 457, 458, 0, 459, 460, 461, - 0, 0, 462, 463, 464, 465, 466, 0, 467, 468, - 469, 470, 471, 472, 473, 474, 0, 0, 475, 476, - 477, 0, 478, 479, 480, 481, 0, 482, 483, 484, - 485, 486, 487, 488, 489, 0, 490, 0, 492, 493, - 494, 495, 496, 497, 498, 0, 0, 499, 0, 0, - 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, - 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, - 520, 0, 2970, 1363, 821, 0, 0, 2074, 1060, 0, - 0, 0, 0, 0, 2075, 2076, 0, 3161, 2077, 2078, - 2079, 118, 119, 120, 121, 122, 123, 124, 125, 561, - 126, 127, 128, 562, 563, 564, 2971, 566, 567, 568, - 569, 2972, 130, 131, 571, 132, 133, 134, 2973, 136, - 137, 138, 0, 1505, 2974, 1507, 1508, 578, 144, 145, - 146, 147, 148, 149, 579, 580, 150, 151, 152, 153, - 1509, 1510, 156, 583, 157, 158, 159, 160, 0, 585, - 2975, 587, 2976, 164, 165, 166, 167, 168, 2977, 170, - 171, 172, 590, 173, 174, 175, 176, 177, 178, 591, - 2978, 180, 181, 182, 183, 184, 185, 186, 187, 188, - 189, 1515, 191, 192, 1516, 194, 596, 195, 597, 196, - 197, 198, 199, 200, 201, 598, 599, 202, 203, 204, - 205, 600, 601, 206, 207, 1073, 209, 210, 602, 211, - 212, 213, 603, 214, 215, 216, 604, 217, 218, 219, - 220, 0, 222, 223, 224, 225, 226, 227, 0, 607, - 229, 608, 230, 231, 1517, 233, 610, 234, 611, 235, - 2979, 613, 2980, 238, 239, 2981, 2982, 242, 617, 243, - 618, 0, 0, 246, 247, 621, 248, 249, 250, 251, - 252, 253, 254, 2983, 256, 257, 258, 259, 623, 260, - 261, 262, 263, 264, 265, 266, 624, 267, 2984, 0, - 270, 271, 272, 273, 274, 1523, 1524, 629, 1525, 631, - 278, 2985, 2986, 281, 2987, 283, 284, 285, 286, 287, - 288, 635, 636, 289, 2988, 291, 2989, 639, 293, 294, - 295, 296, 297, 298, 299, 300, 2990, 302, 303, 304, - 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, - 315, 316, 317, 318, 319, 320, 321, 1532, 2991, 1534, - 325, 326, 327, 2992, 645, 329, 330, 2993, 332, 647, - 0, 334, 1536, 336, 337, 338, 650, 339, 340, 651, - 652, 2994, 342, 343, 653, 654, 344, 345, 0, 2995, - 348, 2996, 0, 351, 352, 353, 354, 355, 356, 357, - 358, 359, 360, 361, 659, 660, 661, 662, 362, 363, - 0, 2997, 366, 367, 0, 369, 370, 371, 666, 372, - 373, 374, 375, 376, 377, 667, 378, 379, 380, 381, - 382, 1540, 384, 385, 386, 387, 669, 388, 389, 390, - 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, - 670, 401, 402, 2998, 404, 405, 406, 1542, 408, 409, - 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, - 420, 673, 2999, 421, 422, 423, 424, 425, 426, 3000, - 428, 429, 676, 3001, 431, 432, 1546, 434, 679, 435, - 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, - 446, 3002, 448, 0, 682, 683, 450, 451, 684, 452, - 3003, 454, 455, 456, 457, 458, 686, 459, 1549, 1550, - 689, 690, 462, 463, 0, 465, 0, 693, 467, 468, - 3004, 470, 471, 472, 473, 474, 3005, 696, 475, 476, - 477, 697, 478, 479, 480, 481, 698, 482, 483, 484, - 485, 486, 0, 1553, 489, 701, 490, 3006, 492, 493, - 494, 495, 496, 497, 498, 703, 704, 499, 705, 706, - 500, 501, 502, 503, 504, 505, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 517, 518, 519, - 520, 0, 528, 0, 2080, 2081, 2082, 2074, 3007, 3008, - 2085, 2086, 2087, 2088, 2075, 2076, 0, 0, 2077, 2078, - 2079, 118, 119, 120, 121, 122, 123, 124, 125, 0, - 126, 127, 128, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 130, 131, 0, 132, 133, 134, 0, 136, - 137, 138, 139, 140, 0, 142, 143, 0, 144, 145, - 146, 147, 148, 149, 0, 0, 150, 151, 152, 153, - 154, 155, 156, 0, 157, 158, 159, 160, 161, 0, - 0, 0, 163, 164, 165, 166, 167, 168, 0, 170, - 171, 172, 0, 173, 174, 175, 176, 177, 178, 0, - 0, 180, 181, 182, 183, 184, 185, 186, 187, 188, - 189, 190, 191, 192, 193, 194, 0, 195, 0, 196, - 197, 198, 199, 200, 201, 0, 0, 202, 203, 204, - 205, 0, 0, 206, 207, 208, 209, 210, 0, 211, - 212, 213, 0, 214, 215, 216, 0, 217, 218, 219, - 220, 221, 222, 223, 224, 225, 226, 227, 228, 0, - 229, 0, 230, 231, 232, 233, 0, 234, 0, 235, - 0, 0, 0, 238, 239, 529, 0, 242, 0, 243, - 0, 244, 245, 246, 247, 0, 248, 249, 250, 251, - 252, 253, 254, 0, 256, 257, 258, 259, 0, 260, - 261, 262, 263, 264, 265, 266, 0, 267, 0, 269, - 270, 271, 272, 273, 274, 275, 276, 0, 277, 0, - 278, 0, 0, 281, 0, 283, 284, 285, 286, 287, - 288, 0, 0, 289, 0, 291, 0, 0, 293, 294, - 295, 296, 297, 298, 299, 300, 530, 302, 303, 304, - 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, - 315, 316, 317, 318, 319, 320, 321, 322, 0, 324, - 325, 326, 327, 328, 0, 329, 330, 0, 332, 0, - 333, 334, 335, 336, 337, 338, 0, 339, 340, 0, - 0, 341, 342, 343, 0, 0, 344, 345, 346, 0, - 348, 0, 350, 351, 352, 353, 354, 355, 356, 357, - 358, 359, 360, 361, 0, 0, 0, 0, 362, 363, - 364, 0, 366, 367, 368, 369, 370, 371, 0, 372, - 373, 374, 375, 376, 377, 0, 378, 379, 380, 381, - 382, 383, 384, 385, 386, 387, 0, 388, 389, 390, - 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, - 0, 401, 402, 0, 404, 405, 406, 407, 408, 409, - 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, - 420, 0, 0, 421, 422, 423, 424, 425, 426, 427, - 428, 429, 0, 0, 431, 432, 433, 434, 0, 435, - 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, - 446, 531, 448, 449, 0, 0, 450, 451, 0, 452, - 0, 454, 455, 456, 457, 458, 0, 459, 460, 461, - 0, 0, 462, 463, 464, 465, 466, 0, 467, 468, - 469, 470, 471, 472, 473, 474, 0, 0, 475, 476, - 477, 0, 478, 479, 480, 481, 0, 482, 483, 484, - 485, 486, 487, 488, 489, 0, 490, 0, 492, 493, - 494, 495, 496, 497, 498, 0, 0, 499, 0, 0, - 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, - 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, - 520, 0, 0, 0, 2080, 2081, 2082, 0, 2083, 2084, - 2085, 2086, 2087, 2088, 1638, 0, 0, 1639, 0, 0, - 0, 1640, 1641, 1642, 1643, 1644, 1645, 1646, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 1647, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 1649, 1638, 0, 0, 1639, 0, 0, 1650, - 1640, 1641, 1642, 1643, 1644, 1645, 1646, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 1647, 0, 0, 0, 0, 1651, 0, 0, 0, - 0, 1649, 1638, 0, 0, 1639, 0, 0, 1650, 1640, - 1641, 1642, 1643, 1644, 1645, 1646, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 1647, 0, 0, 0, 0, 1651, 0, 0, 0, 0, - 1649, 0, 0, 0, 0, 0, 0, 1650, 0, 0, - 1638, 0, 0, 1639, 0, 0, 0, 1640, 1641, 1642, - 1643, 1644, 1645, 1646, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 1651, 0, 0, 0, 1647, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 1649, 1638, - 0, 0, 1639, 1652, 0, 1650, 1640, 1641, 1642, 1643, - 1644, 1645, 1646, 0, 0, 0, 0, 0, 0, 0, - 1653, 0, 0, 0, 0, 1654, 0, 1647, 0, 0, - 0, 0, 1651, 0, 0, 0, 0, 1649, 0, 0, - 0, 0, 1652, 0, 1650, 0, 0, 0, 1655, 1656, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 1653, - 0, 0, 0, 1657, 1654, 0, 0, 0, 0, 0, - 0, 1651, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 1652, 0, 0, 0, 0, 0, 1655, 1656, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 1653, 0, - 0, 1658, 1657, 1654, 1659, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 1660, 0, - 0, 1661, 0, 0, 0, 0, 1655, 1656, 0, 1652, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 1658, 1657, 0, 1659, 0, 0, 1653, 0, 0, 0, - 0, 1654, 0, 0, 0, 0, 0, 1660, 0, 0, - 1661, 0, 0, 0, 0, 0, 0, 0, 1652, 0, - 0, 0, 0, 0, 1655, 1656, 0, 0, 0, 1658, - 0, 0, 1659, 0, 0, 1653, 0, 0, 0, 1657, - 1654, 0, 0, 0, 0, 0, 1660, 0, 0, 1661, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 1655, 1656, 0, 0, 0, 0, 0, - 1662, 0, 0, 0, 0, 0, 0, 1658, 1657, 0, - 1659, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 1660, 0, 0, 1661, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 1662, - 0, 0, 0, 0, 0, 0, 1658, 0, 0, 1659, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 1660, 0, 0, 1661, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 1662, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 1663, 0, - 0, 1664, 1665, 1666, 0, 1667, 1668, 1669, 1670, 1671, - 1672, 0, 0, 0, 0, 3322, 1662, 0, 0, 0, - 0, 0, 1638, 0, 0, 1639, 0, 0, 0, 1640, - 1641, 1642, 1643, 1644, 1645, 1646, 0, 1663, 0, 0, - 1664, 1665, 1666, 0, 1667, 1668, 1669, 1670, 1671, 1672, - 1647, 0, 0, 0, 3344, 1662, 0, 0, 1638, 0, - 1649, 1639, 0, 0, 0, 1640, 1641, 1650, 0, 1644, - 1645, 1646, 0, 0, 0, 0, 1663, 0, 0, 1664, - 1665, 1666, 0, 1667, 1668, 1669, 1670, 1671, 1672, 0, - 0, 0, 0, 3444, 1651, 0, 1649, 0, 0, 0, - 0, 0, 0, 1650, 0, 0, 0, 0, 0, 1638, - 0, 0, 1639, 0, 0, 0, 1640, 1641, 1642, 1643, - 1644, 1645, 1646, 0, 1663, 0, 0, 1664, 1665, 1666, - 1651, 1667, 1668, 1669, 1670, 1671, 1672, 1647, 0, 0, - 0, 3500, 0, 0, 0, 0, 0, 1649, 1638, 0, - 0, 1639, 0, 0, 1650, 1640, 1641, 1642, 1643, 1644, - 1645, 1646, 0, 1663, 0, 0, 1664, 1665, 1666, 0, - 1667, 1668, 1669, 1670, 1671, 1672, 1647, 0, 0, 0, - 3522, 1651, 0, 0, 0, 0, 1649, 1638, 0, 0, - 1639, 1652, 0, 1650, 1640, 1641, 1642, 1643, 1644, 1645, - 1646, 0, 0, 0, 0, 0, 0, 0, 1653, 0, - 0, 0, 0, 1654, 0, 1647, 0, 0, 0, 0, - 1651, 0, 0, 0, 0, 1649, 0, 1652, 0, 0, - 0, 0, 1650, 0, 0, 0, 1655, 1656, 0, 0, - 0, 0, 0, 0, 1653, 0, 0, 0, 0, 1654, - 0, 1657, 0, 0, 0, 0, 0, 0, 0, 1651, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 1655, 1656, 0, 0, 0, 0, 1652, 0, - 0, 0, 0, 0, 0, 0, 0, 1657, 0, 1658, - 0, 0, 1659, 0, 0, 1653, 0, 0, 0, 0, - 1654, 0, 0, 0, 0, 0, 1660, 0, 0, 1661, - 0, 0, 0, 0, 0, 0, 0, 1652, 0, 0, - 0, 0, 0, 1655, 1656, 1658, 0, 0, 1659, 0, - 0, 0, 0, 0, 1653, 0, 0, 0, 1657, 1654, - 0, 0, 1660, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 1652, 0, 0, 0, - 0, 0, 1655, 1656, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 1653, 0, 0, 1658, 1657, 1654, 1659, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 1660, 0, 0, 1661, 0, 0, 0, - 0, 1655, 1656, 0, 0, 0, 0, 0, 1662, 0, - 0, 0, 0, 0, 0, 1658, 1657, 0, 1659, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 1660, 0, 0, 1661, 0, 0, 0, 0, - 0, 0, 0, 0, 1662, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 1658, 0, 0, 1659, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 1660, 0, 0, 1661, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 1662, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 1663, 0, 0, 1664, - 1665, 1666, 0, 1667, 1668, 1669, 1670, 1671, 1672, 0, - 0, 1826, 0, 0, 1662, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 1663, 0, 0, 1664, 1665, 1666, 0, 1667, - 1668, 1669, 1670, 1671, 1672, 0, 0, 0, 0, 0, - 0, 0, 0, 1662, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 1663, 0, 0, 1664, 1665, 1666, 0, - 1667, 1668, 1669, 1670, 1671, 1672, 0, 0, 2870, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 1663, 0, 0, 1664, 1665, 1666, 0, 1667, - 1668, 1669, 1670, 1671, 1672, 0, 0, 3312, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 560, 0, - 0, 1663, 0, 0, 1664, 1665, 1666, 0, 1667, 1668, - 1669, 1670, 1671, 1672, 0, 0, 3484, 118, 119, 120, - 121, 122, 123, 124, 125, 561, 126, 127, 128, 562, - 563, 564, 565, 566, 567, 568, 569, 570, 130, 131, - 571, 132, 133, 134, 572, 136, 137, 138, 573, 574, - 575, 576, 577, 578, 144, 145, 146, 147, 148, 149, - 579, 580, 150, 151, 152, 153, 581, 582, 156, 583, - 157, 158, 159, 160, 584, 585, 586, 587, 588, 164, - 165, 166, 167, 168, 589, 170, 171, 172, 590, 173, - 174, 175, 176, 177, 178, 591, 592, 180, 181, 182, - 183, 184, 185, 186, 187, 188, 189, 594, 191, 192, - 595, 194, 596, 195, 597, 196, 197, 198, 199, 200, - 201, 598, 599, 202, 203, 204, 205, 600, 601, 206, - 207, 208, 209, 210, 602, 211, 212, 213, 603, 214, - 215, 216, 604, 217, 218, 219, 220, 605, 222, 223, - 224, 225, 226, 227, 606, 607, 229, 608, 230, 231, - 609, 233, 610, 234, 611, 235, 612, 613, 614, 238, - 239, 615, 616, 242, 617, 243, 618, 619, 620, 246, - 247, 621, 248, 249, 250, 251, 252, 253, 254, 622, - 256, 257, 258, 259, 623, 260, 261, 262, 263, 264, - 265, 266, 624, 267, 625, 626, 270, 271, 272, 273, - 274, 627, 628, 629, 630, 631, 278, 632, 633, 281, - 634, 283, 284, 285, 286, 287, 288, 635, 636, 289, - 637, 291, 638, 639, 293, 294, 295, 296, 297, 298, - 299, 300, 640, 302, 303, 304, 305, 306, 307, 308, - 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, - 319, 320, 321, 641, 642, 643, 325, 326, 327, 644, - 645, 329, 330, 646, 332, 647, 648, 334, 649, 336, - 337, 338, 650, 339, 340, 651, 652, 341, 342, 343, - 653, 654, 344, 345, 655, 656, 348, 657, 658, 351, - 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, - 659, 660, 661, 662, 362, 363, 663, 664, 366, 367, - 665, 369, 370, 371, 666, 372, 373, 374, 375, 376, - 377, 667, 378, 379, 380, 381, 382, 668, 384, 385, - 386, 387, 669, 388, 389, 390, 391, 392, 393, 394, - 395, 396, 397, 398, 399, 400, 670, 401, 402, 671, - 404, 405, 406, 672, 408, 409, 410, 411, 412, 413, - 414, 415, 416, 417, 418, 419, 420, 673, 674, 421, - 422, 423, 424, 425, 426, 675, 428, 429, 676, 677, - 431, 432, 678, 434, 679, 435, 436, 437, 438, 439, - 440, 441, 442, 443, 444, 445, 446, 680, 448, 681, - 682, 683, 450, 451, 684, 452, 685, 454, 455, 456, - 457, 458, 686, 459, 687, 688, 689, 690, 462, 463, - 691, 465, 692, 693, 467, 468, 694, 470, 471, 472, - 473, 474, 695, 696, 475, 476, 477, 697, 478, 479, - 480, 481, 698, 482, 483, 484, 485, 486, 699, 700, - 489, 701, 490, 702, 492, 493, 494, 495, 496, 497, - 498, 703, 704, 499, 705, 706, 500, 501, 502, 503, - 504, 505, 707, 708, 709, 710, 711, 712, 713, 714, - 715, 716, 717, 517, 518, 519, 520, 528, 0, 0, - 0, 0, 0, 0, 0, 0, 2111, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 118, 119, 120, 121, - 122, 123, 124, 125, 0, 126, 127, 128, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 130, 131, 0, - 132, 133, 134, 0, 136, 137, 138, 139, 140, 0, - 142, 143, 0, 144, 145, 146, 147, 148, 149, 0, - 0, 150, 151, 152, 153, 154, 155, 156, 0, 157, - 158, 159, 160, 161, 0, 0, 0, 163, 164, 165, - 166, 167, 168, 0, 170, 171, 172, 0, 173, 174, - 175, 176, 177, 178, 0, 0, 180, 181, 182, 183, - 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, - 194, 0, 195, 0, 196, 197, 198, 199, 200, 201, - 0, 0, 202, 203, 204, 205, 0, 0, 206, 207, - 208, 209, 210, 0, 211, 212, 213, 0, 214, 215, - 216, 0, 217, 218, 219, 220, 221, 222, 223, 224, - 225, 226, 227, 228, 0, 229, 0, 230, 231, 232, - 233, 0, 234, 0, 235, 0, 0, 0, 238, 239, - 529, 0, 242, 0, 243, 0, 244, 245, 246, 247, - 0, 248, 249, 250, 251, 252, 253, 254, 0, 256, - 257, 258, 259, 0, 260, 261, 262, 263, 264, 265, - 266, 0, 267, 0, 269, 270, 271, 272, 273, 274, - 275, 276, 0, 277, 0, 278, 0, 0, 281, 0, - 283, 284, 285, 286, 287, 288, 0, 0, 289, 0, - 291, 0, 0, 293, 294, 295, 296, 297, 298, 299, - 300, 530, 302, 303, 304, 305, 306, 307, 308, 309, - 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, - 320, 321, 322, 0, 324, 325, 326, 327, 328, 0, - 329, 330, 0, 332, 0, 333, 334, 335, 336, 337, - 338, 0, 339, 340, 0, 0, 341, 342, 343, 0, - 0, 344, 345, 346, 0, 348, 0, 350, 351, 352, - 353, 354, 355, 356, 357, 358, 359, 360, 361, 0, - 0, 0, 0, 362, 363, 364, 0, 366, 367, 368, - 369, 370, 371, 0, 372, 373, 374, 375, 376, 377, - 0, 378, 379, 380, 381, 382, 383, 384, 385, 386, - 387, 0, 388, 389, 390, 391, 392, 393, 394, 395, - 396, 397, 398, 399, 400, 0, 401, 402, 0, 404, - 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, - 415, 416, 417, 418, 419, 420, 0, 0, 421, 422, - 423, 424, 425, 426, 427, 428, 429, 0, 0, 431, - 432, 433, 434, 0, 435, 436, 437, 438, 439, 440, - 441, 442, 443, 444, 445, 446, 531, 448, 449, 0, - 0, 450, 451, 0, 452, 0, 454, 455, 456, 457, - 458, 0, 459, 460, 461, 0, 0, 462, 463, 464, - 465, 466, 0, 467, 468, 469, 470, 471, 472, 473, - 474, 0, 0, 475, 476, 477, 0, 478, 479, 480, - 481, 0, 482, 483, 484, 485, 486, 487, 488, 489, - 0, 490, 0, 492, 493, 494, 495, 496, 497, 498, - 0, 0, 499, 0, 0, 500, 501, 502, 503, 504, - 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, - 515, 516, 517, 518, 519, 520, 528, 0, 0, 0, - 0, 0, 0, 0, 0, 2763, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 118, 119, 120, 121, 122, - 123, 124, 125, 0, 126, 127, 128, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 130, 131, 0, 132, - 133, 134, 0, 136, 137, 138, 139, 140, 0, 142, - 143, 0, 144, 145, 146, 147, 148, 149, 0, 0, - 150, 151, 152, 153, 154, 155, 156, 0, 157, 158, - 159, 160, 161, 0, 0, 0, 163, 164, 165, 166, - 167, 168, 0, 170, 171, 172, 0, 173, 174, 175, - 176, 177, 178, 0, 0, 180, 181, 182, 183, 184, - 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, - 0, 195, 0, 196, 197, 198, 199, 200, 201, 0, - 0, 202, 203, 204, 205, 0, 0, 206, 207, 208, - 209, 210, 0, 211, 212, 213, 0, 214, 215, 216, - 0, 217, 218, 219, 220, 221, 222, 223, 224, 225, - 226, 227, 228, 0, 229, 0, 230, 231, 232, 233, - 0, 234, 0, 235, 0, 0, 0, 238, 239, 529, - 0, 242, 0, 243, 0, 244, 245, 246, 247, 0, - 248, 249, 250, 251, 252, 253, 254, 0, 256, 257, - 258, 259, 0, 260, 261, 262, 263, 264, 265, 266, - 0, 267, 0, 269, 270, 271, 272, 273, 274, 275, - 276, 0, 277, 0, 278, 0, 0, 281, 0, 283, - 284, 285, 286, 287, 288, 0, 0, 289, 0, 291, - 0, 0, 293, 294, 295, 296, 297, 298, 299, 300, - 530, 302, 303, 304, 305, 306, 307, 308, 309, 310, - 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, - 321, 322, 0, 324, 325, 326, 327, 328, 0, 329, - 330, 0, 332, 0, 333, 334, 335, 336, 337, 338, - 0, 339, 340, 0, 0, 341, 342, 343, 0, 0, - 344, 345, 346, 0, 348, 0, 350, 351, 352, 353, - 354, 355, 356, 357, 358, 359, 360, 361, 0, 0, - 0, 0, 362, 363, 364, 0, 366, 367, 368, 369, - 370, 371, 0, 372, 373, 374, 375, 376, 377, 0, - 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, - 0, 388, 389, 390, 391, 392, 393, 394, 395, 396, - 397, 398, 399, 400, 0, 401, 402, 0, 404, 405, - 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, - 416, 417, 418, 419, 420, 0, 0, 421, 422, 423, - 424, 425, 426, 427, 428, 429, 0, 0, 431, 432, - 433, 434, 0, 435, 436, 437, 438, 439, 440, 441, - 442, 443, 444, 445, 446, 531, 448, 449, 0, 0, - 450, 451, 0, 452, 0, 454, 455, 456, 457, 458, - 0, 459, 460, 461, 0, 0, 462, 463, 464, 465, - 466, 0, 467, 468, 469, 470, 471, 472, 473, 474, - 0, 0, 475, 476, 477, 0, 478, 479, 480, 481, - 0, 482, 483, 484, 485, 486, 487, 488, 489, 0, - 490, 0, 492, 493, 494, 495, 496, 497, 498, 0, - 0, 499, 0, 0, 500, 501, 502, 503, 504, 505, - 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, - 516, 517, 518, 519, 520, 974, 1363, 821, 0, 0, - 0, 1060, 0, 0, 2766, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 118, 119, 120, 121, 122, 123, - 124, 125, 0, 126, 127, 128, 0, 0, 0, 565, - 0, 0, 0, 0, 570, 130, 131, 0, 132, 133, - 134, 572, 136, 137, 138, 573, 574, 575, 576, 577, - 0, 144, 145, 146, 147, 148, 149, 0, 0, 150, - 151, 152, 153, 581, 582, 156, 0, 157, 158, 159, - 160, 584, 0, 586, 0, 588, 164, 165, 166, 167, - 168, 589, 170, 171, 172, 0, 173, 174, 175, 176, - 177, 178, 0, 592, 180, 181, 182, 183, 184, 185, - 186, 187, 188, 189, 594, 191, 192, 595, 194, 0, - 195, 0, 196, 197, 198, 199, 200, 201, 0, 0, - 202, 203, 204, 205, 0, 0, 206, 207, 208, 209, - 210, 0, 211, 212, 213, 0, 214, 215, 216, 0, - 217, 218, 219, 220, 605, 222, 223, 224, 225, 226, - 227, 606, 1364, 229, 0, 230, 231, 609, 233, 0, - 234, 0, 235, 612, 0, 614, 238, 239, 615, 616, - 242, 0, 243, 0, 619, 620, 246, 247, 0, 248, - 249, 250, 251, 252, 253, 254, 622, 256, 257, 258, - 259, 0, 260, 261, 262, 263, 264, 265, 266, 0, - 267, 625, 626, 270, 271, 272, 273, 274, 627, 628, - 0, 630, 0, 278, 632, 633, 281, 634, 283, 284, - 285, 286, 287, 288, 0, 0, 289, 637, 291, 638, - 0, 293, 294, 295, 296, 297, 298, 299, 300, 640, - 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, - 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, - 641, 642, 643, 325, 326, 327, 644, 0, 329, 330, - 646, 332, 0, 648, 334, 649, 336, 337, 338, 0, - 339, 340, 1365, 0, 341, 342, 343, 0, 0, 344, - 345, 655, 656, 348, 657, 658, 351, 352, 353, 354, - 355, 356, 357, 358, 359, 360, 361, 0, 0, 0, - 0, 362, 363, 663, 664, 366, 367, 665, 369, 370, - 371, 0, 372, 373, 374, 375, 376, 377, 0, 378, - 379, 380, 381, 382, 668, 384, 385, 386, 387, 0, - 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, - 398, 399, 400, 0, 401, 402, 671, 404, 405, 406, - 672, 408, 409, 410, 411, 412, 413, 414, 415, 416, - 417, 418, 419, 420, 0, 674, 421, 422, 423, 424, - 425, 426, 675, 428, 429, 0, 677, 431, 432, 678, - 434, 0, 435, 436, 437, 438, 439, 440, 441, 442, - 443, 444, 445, 446, 680, 448, 681, 0, 0, 450, - 451, 0, 452, 685, 454, 455, 456, 457, 458, 0, - 459, 687, 688, 0, 0, 462, 463, 691, 465, 692, - 1366, 467, 468, 694, 470, 471, 472, 473, 474, 0, - 0, 475, 476, 477, 0, 478, 479, 480, 481, 0, - 482, 483, 484, 485, 486, 699, 700, 489, 0, 490, - 702, 492, 493, 494, 495, 496, 497, 498, 0, 0, - 499, 0, 0, 500, 501, 502, 503, 504, 505, 707, - 708, 709, 710, 711, 712, 713, 714, 715, 716, 717, - 517, 518, 519, 520, 0, 0, 1638, 0, 0, 1639, - 0, 1367, 1368, 1640, 1641, 1642, 1643, 1644, 1645, 1646, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 1647, 0, 0, 0, 0, 2212, - 0, 0, 0, 0, 1649, 1638, 0, 0, 1639, 0, - 0, 1650, 1640, 1641, 1642, 1643, 1644, 1645, 1646, 0, - 0, 0, 0, 1638, 0, 0, 1639, 0, 0, 0, - 1640, 1641, 0, 1647, 1644, 1645, 1646, 0, 1651, 0, - 0, 0, 0, 1649, 1638, 0, 0, 1639, 0, 0, - 1650, 1640, 1641, 1642, 1643, 1644, 1645, 1646, 0, 0, - 0, 1649, 0, 0, 0, 0, 0, 0, 1650, 0, - 0, 0, 1647, 0, 0, 0, 0, 1651, 0, 0, - 0, 0, 1649, 0, 2213, 0, 0, 0, 0, 1650, - 0, 1638, 0, 0, 1639, 1651, 0, 0, 1640, 1641, - 1642, 1643, 1644, 1645, 1646, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 1651, 0, 0, 1647, - 0, 0, 0, 1925, 0, 0, 0, 0, 0, 1649, - 0, 0, 0, 0, 0, 1652, 1650, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 1653, 0, 0, 0, 0, 1654, 0, 0, - 0, 0, 0, 1651, 1961, 0, 0, 0, 0, 1962, - 0, 0, 0, 0, 1652, 0, 0, 0, 0, 0, - 1655, 1656, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 1653, 1652, 0, 0, 1657, 1654, 0, 0, 0, - 0, 0, 3590, 0, 0, 0, 0, 0, 0, 1653, - 0, 0, 0, 1652, 1654, 0, 0, 0, 0, 1655, - 1656, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 1653, 0, 0, 1658, 1657, 1654, 1659, -2101, -2101, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 1660, 0, 1657, 1661, 0, 0, 0, 0, 1655, 1656, - 1652, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 1658, 1657, 0, 1659, 0, 1653, 0, 0, - 0, 0, 1654, 0, 0, 0, 0, 0, 0, 1660, - 0, 0, 1661, -2101, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 1655, 1656, 1660, 0, 0, - 0, 1658, 0, 0, 1659, 0, 0, 0, 0, 0, - 1657, 0, 0, 0, 0, 0, 0, 0, 1660, 0, - 0, 1661, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 1662, 0, 0, 0, 0, 0, 1658, 0, - 3591, 1659, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 1660, 0, 0, 1661, 0, - 0, 0, 0, 0, 0, 0, 1638, 0, 0, 1639, - 0, 1662, 0, 1640, 1641, 1642, 1643, 1644, 1645, 1646, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 1662, - 0, 0, 0, 0, 1647, 2216, 0, 0, 0, 0, - 0, 0, 0, 0, 1649, 0, 0, 0, 0, 0, - 1662, 1650, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 1651, 0, - 1663, 0, 0, 1664, 1665, 1666, 0, 1667, 1668, 1669, - 1670, 1671, 1672, 0, 0, 0, 0, 1662, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 1663, - 0, 0, 1664, 1665, 1666, 0, 1667, 1668, 1669, 1670, - 1671, 1672, 0, 0, 0, 0, 0, 1663, 0, 0, - 1664, 1665, 1666, 0, 1667, 1668, 1669, 1670, 1671, 1672, - 0, 0, 0, 0, 0, 0, 0, 0, 1663, 0, - 0, 1664, 1665, 1666, 0, 1667, 1668, 1669, 1670, 1671, - 1672, 0, 0, 0, 0, 1652, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 1638, 1653, 0, 1639, 0, 0, 1654, 1640, 1641, - 1642, 1643, 1644, 1645, 1646, 1663, 0, 0, 1664, 1665, - 1666, 0, 1667, 1668, 1669, 1670, 1671, 1672, 0, 1647, - 1655, 1656, 0, 1967, 0, 0, 0, 0, 0, 1649, - 0, 0, 0, 0, 0, 1657, 1650, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 1638, 0, 0, - 1639, 0, 0, 1651, 1640, 1641, 1642, 1643, 1644, 1645, - 1646, 0, 0, 1658, 0, 0, 1659, 0, 0, 0, - 0, 0, 0, 0, 0, 1647, 0, 0, 0, 0, - 1660, 0, 0, 1661, 0, 1649, 0, 0, 0, 0, - 0, 0, 1650, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 1932, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 1651, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 1638, 0, 0, 1639, - 0, 0, 0, 1640, 1641, 1642, 1643, 1644, 1645, 1646, - 1652, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 1647, 0, 0, 1653, 1974, 0, - 0, 0, 1654, 0, 1649, 0, 0, 0, 0, 0, - 0, 1650, 1662, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 1655, 1656, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 1651, 0, - 1657, 1972, 0, 0, 0, 0, 1652, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 1653, 0, 0, 0, 0, 1654, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 1658, 0, - 0, 1659, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 1655, 1656, 0, 0, 1660, 0, 0, 1661, 0, - 0, 0, 0, 0, 0, 0, 1657, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 1663, 0, 0, 1664, 1665, 1666, 0, 1667, 1668, 1669, - 1670, 1671, 1672, 0, 0, 1652, 0, 0, 0, 0, - 0, 0, 0, 0, 1658, 0, 0, 1659, 0, 0, - 0, 0, 1653, 0, 0, 0, 0, 1654, 0, 0, - 0, 1660, 0, 0, 1661, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 1638, 0, 0, 1639, 0, - 1655, 1656, 1640, 1641, 1642, 1643, 1644, 1645, 1646, 0, - 0, 0, 0, 0, 0, 1657, 0, 1662, 0, 0, - 0, 0, 0, 1647, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 1649, 0, 0, 0, 0, 0, 0, - 1650, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 1638, 1658, 0, 1639, 1659, 0, 0, 1640, - 1641, 1642, 1643, 1644, 1645, 1646, 0, 1651, 0, 0, - 1660, 0, 0, 1661, 0, 0, 0, 0, 0, 0, - 1647, 0, 0, 1662, 0, 0, 0, 0, 0, 0, - 1649, 0, 0, 0, 0, 0, 0, 1650, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 1651, 1663, 0, 0, 1664, 1665, - 1666, 0, 1667, 1668, 1669, 1670, 1671, 1672, 0, 1638, - 0, 0, 1639, 0, 0, 0, 1640, 1641, 1642, 1643, - 1644, 1645, 1646, 0, 2104, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 1652, 0, 0, 1647, 0, 0, - 0, 2843, 1662, 0, 0, 0, 0, 1649, 0, 0, - 0, 1653, 0, 0, 1650, 0, 1654, 0, 0, 0, - 0, 1663, 0, 0, 1664, 1665, 1666, 0, 1667, 1668, - 1669, 1670, 1671, 1672, 0, 0, 0, 0, 0, 1655, - 1656, 1651, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 1652, 0, 0, 1657, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 1653, 0, - 0, 0, 0, 1654, 0, 0, 0, 0, 1638, 0, - 0, 1639, 0, 0, 0, 1640, 1641, 1642, 1643, 1644, - 1645, 1646, 1658, 0, 0, 1659, 1655, 1656, 0, 0, - 0, 0, 0, 0, 0, 0, 1647, 0, 0, 1660, - 1663, 1657, 1661, 1664, 1665, 1666, 1649, 1667, 1668, 1669, - 1670, 1671, 1672, 1650, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 1652, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 1658, - 1651, 0, 1659, 0, 0, 1653, 0, 0, 0, 0, - 1654, 0, 0, 0, 0, 0, 1660, 0, 0, 1661, - 0, 0, 0, 0, 0, 0, 0, 0, 1638, 0, - 0, 1639, 0, 1655, 1656, 1640, 1641, 1642, 1643, 1644, - 1645, 1646, 0, 0, 0, 0, 0, 0, 1657, 0, - 0, 0, 0, 0, 0, 0, 1647, 0, 0, 0, - 0, 1662, 0, 0, 0, 0, 1649, 0, 0, 0, - 0, 0, 0, 1650, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 1658, 0, 0, 1659, - 0, 0, 0, 0, 0, 0, 0, 1652, 0, 0, - 1651, 0, 0, 1660, 0, 0, 1661, 0, 0, 0, - 0, 0, 0, 0, 1653, 0, 0, 1638, 1662, 1654, - 1639, 0, 0, 0, 1640, 1641, 1642, 1643, 1644, 1645, - 1646, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 1655, 1656, 0, 1647, 0, 0, 0, 0, - 0, 2827, 0, 0, 0, 1649, 0, 1657, 0, 0, - 0, 0, 1650, 0, 0, 0, 0, 0, 0, 1663, - 0, 0, 1664, 1665, 1666, 0, 1667, 1668, 1669, 1670, - 1671, 1672, 0, 0, 0, 0, 0, 0, 0, 1651, - 0, 0, 0, 0, 0, 1658, 0, 1652, 1659, 0, - 0, 0, 0, 0, 0, 1662, 0, 0, 0, 0, - 0, 0, 1660, 0, 1653, 1661, 0, 0, 0, 1654, - 0, 0, 0, 0, 0, 0, 1663, 0, 0, 1664, - 1665, 1666, 0, 1667, 1668, 1669, 1670, 1671, 1672, 0, - 0, 0, 1836, 1656, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 1657, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 1652, 0, 0, 0, - 0, 0, 0, 0, 0, 1658, 0, 0, 1659, 0, - 0, 0, 0, 1653, 0, 0, 0, 0, 1654, 0, - 0, 0, 1660, 1663, 1662, 1661, 1664, 1665, 1666, 0, - 1667, 1668, 1669, 1670, 1671, 1672, 0, 0, 0, 0, - 0, 1655, 1656, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 1657, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 1658, 0, 0, 1659, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 1660, 0, 0, 1661, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 1662, 0, 0, 0, 0, 0, - 0, 0, 1663, 0, 0, 1664, 1665, 1666, 0, 1667, - 1668, 1669, 1670, 1671, 1672, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 1662, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 1663, 0, 0, 1664, 1665, 1666, 0, 1667, - 1668, 1669, 1670, 1671, 1672, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 560, 0, 2128, 0, 0, - 0, 1663, 0, 0, 1664, 1665, 1666, 0, 1667, 1668, - 1669, 1670, 2233, 1672, 118, 119, 120, 121, 122, 123, - 124, 125, 561, 126, 127, 128, 562, 563, 564, 565, - 566, 567, 568, 569, 570, 130, 131, 571, 132, 133, - 134, 572, 136, 137, 138, 573, 574, 575, 576, 577, - 578, 144, 145, 146, 147, 148, 149, 579, 580, 150, - 151, 152, 153, 581, 582, 156, 583, 157, 158, 159, - 160, 584, 585, 586, 587, 588, 164, 165, 166, 167, - 168, 589, 170, 171, 172, 590, 173, 174, 175, 176, - 177, 178, 591, 592, 180, 181, 182, 183, 184, 185, - 186, 187, 188, 189, 594, 191, 192, 595, 194, 596, - 195, 597, 196, 197, 198, 199, 200, 201, 598, 599, - 202, 203, 204, 205, 600, 601, 206, 207, 208, 209, - 210, 602, 211, 212, 213, 603, 214, 215, 216, 604, - 217, 218, 219, 220, 605, 222, 223, 224, 225, 226, - 227, 606, 607, 229, 608, 230, 231, 609, 233, 610, - 234, 611, 235, 612, 613, 614, 238, 239, 615, 616, - 242, 617, 243, 618, 619, 620, 246, 247, 621, 248, - 249, 250, 251, 252, 253, 254, 622, 256, 257, 258, - 259, 623, 260, 261, 262, 263, 264, 265, 266, 624, - 267, 625, 626, 270, 271, 272, 273, 274, 627, 628, - 629, 630, 631, 278, 632, 633, 281, 634, 283, 284, - 285, 286, 287, 288, 635, 636, 289, 637, 291, 638, - 639, 293, 294, 295, 296, 297, 298, 299, 300, 640, - 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, - 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, - 641, 642, 643, 325, 326, 327, 644, 645, 329, 330, - 646, 332, 647, 648, 334, 649, 336, 337, 338, 650, - 339, 340, 651, 652, 341, 342, 343, 653, 654, 344, - 345, 655, 656, 348, 657, 658, 351, 352, 353, 354, - 355, 356, 357, 358, 359, 360, 361, 659, 660, 661, - 662, 362, 363, 663, 664, 366, 367, 665, 369, 370, - 371, 666, 372, 373, 374, 375, 376, 377, 667, 378, - 379, 380, 381, 382, 668, 384, 385, 386, 387, 669, - 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, - 398, 399, 400, 670, 401, 402, 671, 404, 405, 406, - 672, 408, 409, 410, 411, 412, 413, 414, 415, 416, - 417, 418, 419, 420, 673, 674, 421, 422, 423, 424, - 425, 426, 675, 428, 429, 676, 677, 431, 432, 678, - 434, 679, 435, 436, 437, 438, 439, 440, 441, 442, - 443, 444, 445, 446, 680, 448, 681, 682, 683, 450, - 451, 684, 452, 685, 454, 455, 456, 457, 458, 686, - 459, 687, 688, 689, 690, 462, 463, 691, 465, 692, - 693, 467, 468, 694, 470, 471, 472, 473, 474, 695, - 696, 475, 476, 477, 697, 478, 479, 480, 481, 698, - 482, 483, 484, 485, 486, 699, 700, 489, 701, 490, - 702, 492, 493, 494, 495, 496, 497, 498, 703, 704, - 499, 705, 706, 500, 501, 502, 503, 504, 505, 707, - 708, 709, 710, 711, 712, 713, 714, 715, 716, 717, - 517, 518, 519, 520, 560, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 118, 119, 120, 121, 122, 123, 124, - 125, 561, 126, 127, 128, 562, 563, 564, 565, 566, - 567, 568, 569, 570, 130, 131, 571, 132, 133, 134, - 572, 136, 137, 138, 573, 574, 575, 576, 577, 578, - 144, 145, 146, 147, 148, 149, 579, 580, 150, 151, - 152, 153, 581, 582, 156, 583, 157, 158, 159, 160, - 584, 585, 586, 587, 588, 164, 165, 166, 167, 168, - 589, 170, 171, 172, 590, 173, 174, 175, 176, 177, - 178, 591, 592, 180, 181, 182, 183, 184, 185, 593, - 187, 188, 189, 594, 191, 192, 595, 194, 596, 195, - 597, 196, 197, 198, 199, 200, 201, 598, 599, 202, - 203, 204, 205, 600, 601, 206, 207, 208, 209, 210, - 602, 211, 212, 213, 603, 214, 215, 216, 604, 217, - 218, 219, 220, 605, 222, 223, 224, 225, 226, 227, - 606, 607, 229, 608, 230, 231, 609, 233, 610, 234, - 611, 235, 612, 613, 614, 238, 239, 615, 616, 242, - 617, 243, 618, 619, 620, 246, 247, 621, 248, 249, - 250, 251, 252, 253, 254, 622, 256, 257, 258, 259, - 623, 260, 261, 262, 263, 264, 265, 266, 624, 267, - 625, 626, 270, 271, 272, 273, 274, 627, 628, 629, - 630, 631, 278, 632, 633, 281, 634, 283, 284, 285, - 286, 287, 288, 635, 636, 289, 637, 291, 638, 639, - 293, 294, 295, 296, 297, 298, 299, 300, 640, 302, - 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, - 313, 314, 315, 316, 317, 318, 319, 320, 321, 641, - 642, 643, 325, 326, 327, 644, 645, 329, 330, 646, - 332, 647, 648, 334, 649, 336, 337, 338, 650, 339, - 340, 651, 652, 341, 342, 343, 653, 654, 344, 345, - 655, 656, 348, 657, 658, 351, 352, 353, 354, 355, - 356, 357, 358, 359, 360, 361, 659, 660, 661, 662, - 362, 363, 663, 664, 366, 367, 665, 369, 370, 371, - 666, 372, 373, 374, 375, 376, 377, 667, 378, 379, - 380, 381, 382, 668, 384, 385, 386, 387, 669, 388, - 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, - 399, 400, 670, 401, 402, 671, 404, 405, 406, 672, - 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, - 418, 419, 420, 673, 674, 421, 422, 423, 424, 425, - 426, 675, 428, 429, 676, 677, 431, 432, 678, 434, - 679, 435, 436, 437, 438, 439, 440, 441, 442, 443, - 444, 445, 446, 680, 448, 681, 682, 683, 450, 451, - 684, 452, 685, 454, 455, 456, 457, 458, 686, 459, - 687, 688, 689, 690, 462, 463, 691, 465, 692, 693, - 467, 468, 694, 470, 471, 472, 473, 474, 695, 696, - 475, 476, 477, 697, 478, 479, 480, 481, 698, 482, - 483, 484, 485, 486, 699, 700, 489, 701, 490, 702, - 492, 493, 494, 495, 496, 497, 498, 703, 704, 499, - 705, 706, 500, 501, 502, 503, 504, 505, 707, 708, - 709, 710, 711, 712, 713, 714, 715, 716, 717, 517, - 518, 519, 520, 560, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 118, 119, 120, 121, 122, 123, 124, 125, - 561, 126, 127, 128, 562, 563, 564, 565, 566, 567, - 568, 569, 570, 130, 131, 571, 132, 133, 134, 572, - 136, 137, 138, 573, 574, 575, 576, 577, 578, 144, - 145, 146, 147, 148, 149, 579, 580, 150, 151, 152, - 153, 581, 582, 156, 583, 157, 158, 159, 160, 584, - 585, 586, 587, 588, 164, 165, 166, 167, 168, 589, - 170, 171, 172, 590, 173, 174, 175, 176, 177, 178, - 591, 592, 180, 181, 182, 183, 184, 185, 186, 187, - 188, 189, 594, 191, 192, 595, 194, 596, 195, 597, - 196, 197, 198, 199, 200, 201, 598, 599, 202, 203, - 204, 205, 600, 601, 206, 207, 208, 209, 210, 602, - 211, 212, 213, 603, 214, 215, 216, 604, 217, 218, - 219, 220, 605, 222, 223, 224, 225, 226, 227, 606, - 607, 229, 608, 230, 231, 609, 233, 610, 234, 611, - 235, 612, 613, 614, 238, 239, 615, 616, 242, 617, - 243, 618, 619, 620, 246, 247, 621, 248, 249, 250, - 251, 252, 950, 254, 622, 256, 257, 258, 259, 623, - 260, 261, 262, 263, 264, 265, 266, 624, 267, 625, - 626, 270, 271, 272, 273, 274, 627, 628, 629, 630, - 631, 278, 632, 633, 281, 634, 283, 284, 285, 286, - 287, 288, 635, 636, 289, 637, 291, 638, 639, 293, - 294, 295, 296, 297, 298, 299, 300, 640, 302, 303, - 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, - 314, 315, 316, 317, 318, 319, 320, 321, 641, 642, - 643, 325, 326, 327, 644, 645, 329, 330, 646, 332, - 647, 648, 334, 649, 336, 337, 338, 650, 339, 340, - 651, 652, 341, 342, 343, 653, 654, 344, 345, 655, - 656, 348, 657, 658, 351, 352, 353, 354, 355, 356, - 357, 358, 359, 360, 361, 659, 660, 661, 662, 362, - 363, 663, 664, 366, 367, 665, 369, 370, 371, 666, - 372, 373, 374, 375, 376, 377, 667, 378, 379, 380, - 381, 382, 668, 384, 385, 386, 387, 669, 388, 389, - 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, - 400, 670, 401, 402, 671, 404, 405, 406, 672, 408, - 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, - 419, 420, 673, 674, 421, 422, 423, 424, 425, 426, - 675, 428, 429, 676, 677, 431, 432, 678, 434, 679, - 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, - 445, 446, 680, 448, 681, 682, 683, 450, 451, 684, - 452, 685, 454, 455, 456, 457, 458, 686, 459, 687, - 688, 689, 690, 462, 463, 691, 465, 692, 693, 467, - 468, 694, 470, 471, 472, 473, 474, 695, 696, 475, - 476, 477, 697, 478, 479, 480, 481, 698, 482, 483, - 484, 485, 486, 699, 700, 489, 701, 490, 702, 492, - 493, 494, 495, 496, 497, 498, 703, 704, 499, 705, - 706, 500, 501, 502, 503, 504, 505, 707, 708, 709, - 710, 711, 712, 713, 714, 715, 716, 717, 517, 518, - 519, 520, 560, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 118, 119, 120, 121, 122, 123, 124, 125, 561, - 126, 127, 128, 562, 563, 564, 565, 566, 567, 568, - 569, 570, 130, 131, 571, 132, 133, 134, 572, 136, - 137, 138, 573, 574, 575, 576, 577, 578, 144, 145, - 146, 147, 148, 149, 579, 580, 150, 151, 152, 153, - 581, 582, 156, 583, 157, 158, 159, 160, 584, 585, - 586, 587, 588, 164, 165, 166, 167, 168, 589, 170, - 171, 172, 590, 173, 174, 175, 176, 177, 178, 591, - 592, 180, 181, 182, 183, 184, 185, 186, 187, 188, - 189, 594, 191, 192, 595, 194, 596, 195, 597, 196, - 197, 198, 199, 200, 201, 598, 599, 202, 203, 204, - 205, 600, 601, 206, 207, 208, 209, 210, 602, 211, - 212, 213, 603, 214, 215, 216, 604, 217, 218, 219, - 220, 605, 222, 223, 224, 225, 226, 227, 606, 607, - 229, 608, 230, 231, 609, 233, 610, 234, 611, 235, - 612, 613, 614, 238, 239, 615, 616, 242, 617, 243, - 618, 619, 620, 246, 247, 621, 248, 249, 250, 251, - 252, 253, 254, 622, 256, 257, 258, 259, 623, 260, - 261, 262, 263, 264, 265, 266, 624, 267, 625, 626, - 270, 271, 272, 273, 274, 627, 628, 629, 630, 631, - 278, 632, 633, 281, 634, 283, 284, 285, 286, 287, - 288, 635, 636, 289, 637, 291, 638, 639, 293, 294, - 295, 296, 297, 298, 299, 300, 640, 302, 303, 304, - 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, - 315, 316, 317, 318, 319, 320, 321, 641, 642, 643, - 325, 326, 327, 644, 645, 329, 330, 646, 332, 647, - 648, 334, 649, 336, 337, 338, 650, 339, 340, 651, - 652, 341, 342, 343, 653, 654, 344, 345, 655, 656, - 348, 657, 658, 351, 352, 353, 354, 355, 356, 357, - 358, 359, 360, 361, 659, 660, 661, 662, 362, 363, - 663, 664, 366, 367, 665, 369, 370, 371, 666, 372, - 373, 374, 375, 376, 377, 667, 378, 379, 380, 381, - 382, 668, 384, 385, 386, 387, 669, 388, 389, 390, - 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, - 670, 401, 402, 671, 404, 405, 406, 672, 408, 409, - 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, - 420, 673, 674, 421, 422, 423, 424, 425, 426, 675, - 428, 429, 676, 677, 431, 432, 678, 434, 679, 435, - 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, - 446, 680, 448, 681, 682, 683, 450, 451, 684, 452, - 685, 454, 455, 456, 457, 458, 686, 459, 687, 688, - 689, 690, 462, 463, 691, 465, 692, 693, 467, 468, - 694, 470, 471, 472, 473, 474, 695, 696, 475, 476, - 477, 697, 478, 479, 480, 481, 698, 482, 483, 484, - 485, 486, 699, 700, 489, 701, 490, 702, 492, 493, - 494, 495, 496, 497, 498, 703, 704, 499, 705, 706, - 500, 501, 502, 503, 504, 505, 707, 708, 709, 710, - 711, 712, 713, 714, 715, 716, 717, 517, 518, 519, - 520, 560, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 118, 119, 120, 121, 2282, 123, 124, 125, 561, 126, - 127, 128, 562, 563, 564, 565, 566, 567, 568, 569, - 570, 130, 131, 571, 132, 133, 134, 572, 136, 137, - 138, 573, 574, 575, 576, 577, 578, 144, 145, 146, - 147, 148, 149, 579, 580, 150, 151, 152, 153, 581, - 582, 156, 583, 157, 158, 159, 160, 584, 585, 586, - 587, 588, 164, 165, 166, 167, 168, 589, 170, 171, - 172, 590, 173, 174, 175, 176, 177, 178, 591, 592, - 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, - 594, 191, 192, 595, 194, 596, 195, 597, 196, 197, - 198, 199, 200, 201, 598, 599, 202, 203, 204, 205, - 600, 601, 206, 207, 208, 2283, 210, 602, 211, 212, - 213, 603, 214, 215, 216, 604, 217, 218, 219, 220, - 605, 222, 223, 224, 225, 226, 227, 606, 607, 229, - 608, 230, 231, 609, 233, 610, 234, 611, 235, 612, - 613, 614, 238, 239, 615, 616, 242, 617, 243, 618, - 619, 620, 246, 247, 621, 248, 249, 250, 251, 252, - 253, 254, 622, 256, 257, 258, 259, 623, 260, 261, - 262, 263, 264, 265, 266, 624, 267, 625, 626, 270, - 271, 272, 273, 274, 627, 628, 629, 630, 631, 278, - 632, 633, 281, 634, 283, 284, 285, 286, 287, 288, - 635, 636, 289, 637, 291, 638, 639, 293, 294, 295, - 296, 297, 298, 299, 300, 640, 302, 303, 304, 305, - 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, - 316, 317, 318, 319, 320, 321, 641, 642, 643, 325, - 326, 327, 644, 645, 329, 330, 646, 332, 647, 648, - 334, 649, 336, 337, 338, 650, 339, 340, 651, 652, - 341, 342, 343, 653, 654, 344, 345, 655, 656, 348, - 657, 658, 351, 352, 353, 354, 355, 356, 357, 358, - 359, 360, 361, 659, 660, 661, 662, 362, 363, 663, - 664, 366, 367, 665, 369, 370, 371, 666, 372, 373, - 374, 375, 376, 377, 667, 378, 379, 380, 381, 382, - 668, 384, 385, 386, 387, 669, 388, 389, 390, 391, - 392, 393, 394, 395, 396, 397, 398, 399, 400, 670, - 401, 402, 671, 404, 405, 406, 672, 408, 409, 410, - 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, - 673, 674, 421, 422, 423, 424, 425, 2284, 675, 428, - 429, 676, 677, 431, 432, 678, 434, 679, 435, 436, - 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, - 680, 448, 681, 682, 683, 450, 451, 684, 452, 685, - 454, 455, 456, 457, 458, 686, 459, 687, 688, 689, - 690, 462, 463, 691, 465, 692, 693, 467, 468, 694, - 470, 471, 472, 473, 474, 695, 696, 475, 476, 477, - 697, 478, 479, 480, 481, 698, 482, 483, 484, 485, - 486, 699, 700, 489, 701, 490, 702, 492, 493, 494, - 495, 496, 497, 498, 703, 704, 499, 705, 706, 500, - 501, 502, 503, 504, 505, 707, 708, 709, 710, 711, - 712, 713, 714, 715, 716, 717, 517, 518, 519, 520, - 974, 0, 821, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 118, - 119, 120, 121, 122, 123, 124, 125, 0, 126, 127, - 128, 0, 0, 0, 565, 0, 0, 0, 0, 570, - 130, 131, 0, 132, 133, 134, 572, 136, 137, 138, - 573, 574, 575, 576, 577, 0, 144, 145, 146, 147, - 148, 149, 0, 0, 150, 151, 152, 153, 581, 582, - 156, 0, 157, 158, 159, 160, 584, 0, 586, 0, - 588, 164, 165, 166, 167, 168, 589, 170, 171, 172, - 0, 173, 174, 175, 176, 177, 178, 0, 592, 180, - 181, 182, 183, 184, 185, 186, 187, 188, 189, 594, - 191, 192, 595, 194, 0, 195, 0, 196, 197, 198, - 199, 200, 201, 0, 0, 202, 203, 204, 205, 0, - 0, 206, 207, 208, 209, 210, 0, 211, 212, 213, - 0, 214, 215, 216, 0, 217, 218, 219, 220, 605, - 222, 223, 224, 225, 226, 227, 606, 1364, 229, 0, - 230, 231, 609, 233, 0, 234, 0, 235, 612, 0, - 614, 238, 239, 615, 616, 242, 0, 243, 0, 619, - 620, 246, 247, 0, 248, 249, 250, 251, 252, 253, - 254, 622, 256, 257, 258, 259, 0, 260, 261, 262, - 263, 264, 265, 266, 0, 267, 625, 626, 270, 271, - 272, 273, 274, 627, 628, 0, 630, 0, 278, 632, - 633, 281, 634, 283, 284, 285, 286, 287, 288, 0, - 0, 289, 637, 291, 638, 0, 293, 294, 295, 296, - 297, 298, 299, 300, 640, 302, 303, 304, 305, 306, - 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, - 317, 318, 319, 320, 321, 641, 642, 643, 325, 326, - 327, 644, 0, 329, 330, 646, 332, 0, 648, 334, - 649, 336, 337, 338, 0, 339, 340, 1365, 0, 341, - 342, 343, 0, 0, 344, 345, 655, 656, 348, 657, - 658, 351, 352, 353, 354, 355, 356, 357, 358, 359, - 360, 361, 0, 0, 0, 0, 362, 363, 663, 664, - 366, 367, 665, 369, 370, 371, 0, 372, 373, 374, - 375, 376, 377, 0, 378, 379, 380, 381, 382, 668, - 384, 385, 386, 387, 0, 388, 389, 390, 391, 392, - 393, 394, 395, 396, 397, 398, 399, 400, 0, 401, - 402, 671, 404, 405, 406, 672, 408, 409, 410, 411, - 412, 413, 414, 415, 416, 417, 418, 419, 420, 0, - 674, 421, 422, 423, 424, 425, 426, 675, 428, 429, - 0, 677, 431, 432, 678, 434, 0, 435, 436, 437, - 438, 439, 440, 441, 442, 443, 444, 445, 446, 680, - 448, 681, 0, 0, 450, 451, 0, 452, 685, 454, - 455, 456, 457, 458, 0, 459, 687, 688, 0, 0, - 462, 463, 691, 465, 692, 1366, 467, 468, 694, 470, - 471, 472, 473, 474, 0, 0, 475, 476, 477, 0, - 478, 479, 480, 481, 0, 482, 483, 484, 485, 486, - 699, 700, 489, 0, 490, 702, 492, 493, 494, 495, - 496, 497, 498, 0, 0, 499, 0, 0, 500, 501, - 502, 503, 504, 505, 707, 708, 709, 710, 711, 712, - 713, 714, 715, 716, 717, 517, 518, 519, 520, 974, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 118, 119, - 120, 121, 122, 123, 124, 125, 0, 126, 127, 128, - 3, 4, 0, 565, 0, 0, 0, 0, 570, 130, - 131, 0, 132, 133, 134, 572, 136, 137, 138, 573, - 574, 575, 576, 577, 0, 144, 145, 146, 147, 148, - 149, 0, 0, 150, 151, 152, 153, 581, 582, 156, - 0, 157, 158, 159, 160, 584, 0, 586, 0, 588, - 164, 165, 166, 167, 168, 589, 170, 171, 172, 0, - 173, 174, 175, 176, 177, 178, 0, 592, 180, 181, - 182, 183, 184, 185, 186, 187, 188, 189, 594, 191, - 192, 595, 194, 0, 195, 0, 196, 197, 198, 199, - 200, 201, 0, 0, 202, 203, 204, 205, 0, 0, - 206, 207, 208, 209, 210, 0, 211, 212, 213, 0, - 214, 215, 216, 0, 217, 218, 219, 220, 605, 222, - 223, 224, 225, 226, 227, 606, 0, 229, 0, 230, - 231, 609, 233, 0, 234, 0, 235, 612, 0, 614, - 238, 239, 615, 616, 242, 0, 243, 0, 619, 620, - 246, 247, 0, 248, 249, 250, 251, 252, 253, 254, - 622, 256, 257, 258, 259, 0, 260, 261, 262, 263, - 264, 265, 266, 0, 267, 625, 626, 270, 271, 272, - 273, 274, 627, 628, 0, 630, 0, 278, 632, 633, - 281, 634, 283, 284, 285, 286, 287, 288, 0, 0, - 289, 637, 291, 638, 0, 293, 294, 295, 296, 297, - 298, 299, 300, 640, 302, 303, 304, 305, 306, 307, - 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, - 318, 319, 320, 321, 641, 642, 643, 325, 326, 327, - 644, 0, 329, 330, 646, 332, 0, 648, 334, 649, - 336, 337, 338, 0, 339, 340, 0, 0, 341, 342, - 343, 0, 0, 344, 345, 655, 656, 348, 657, 658, - 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, - 361, 0, 0, 0, 0, 362, 363, 663, 664, 366, - 367, 665, 369, 370, 371, 0, 372, 373, 374, 375, - 376, 377, 0, 378, 379, 380, 381, 382, 668, 384, - 385, 386, 387, 0, 388, 389, 390, 391, 392, 393, - 394, 395, 396, 397, 398, 399, 400, 0, 401, 402, - 671, 404, 405, 406, 672, 408, 409, 410, 411, 412, - 413, 414, 415, 416, 417, 418, 419, 420, 0, 674, - 421, 422, 423, 424, 425, 426, 675, 428, 429, 0, - 677, 431, 432, 678, 434, 0, 435, 436, 437, 438, - 439, 440, 441, 442, 443, 444, 445, 446, 680, 448, - 681, 0, 0, 450, 451, 0, 452, 685, 454, 455, - 456, 457, 458, 0, 459, 687, 688, 0, 0, 462, - 463, 691, 465, 692, 0, 467, 468, 694, 470, 471, - 472, 473, 474, 0, 0, 475, 476, 477, 0, 478, - 479, 480, 481, 0, 482, 483, 484, 485, 486, 699, - 700, 489, 0, 490, 702, 492, 493, 494, 495, 496, - 497, 498, 0, 0, 499, 0, 0, 500, 501, 502, - 503, 504, 505, 707, 708, 709, 710, 711, 712, 713, - 714, 715, 716, 717, 517, 518, 519, 520, 117, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 118, 119, 120, - 121, 122, 123, 124, 125, 0, 126, 127, 128, 0, - 0, 0, 0, 0, 0, 0, 0, 129, 130, 131, - 0, 132, 133, 134, 135, 136, 137, 138, 139, 140, - 141, 142, 143, 0, 144, 145, 146, 147, 148, 149, - 0, 790, 150, 151, 152, 153, 154, 155, 156, 0, - 157, 158, 159, 160, 791, 0, 792, 0, 163, 164, - 165, 166, 167, 168, 169, 170, 171, 172, 0, 173, - 174, 175, 176, 177, 178, 0, 179, 180, 181, 182, - 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, - 193, 194, 0, 195, 0, 196, 197, 198, 199, 200, - 201, 0, 0, 202, 203, 204, 205, 0, 0, 206, - 207, 208, 209, 210, 0, 211, 212, 213, 0, 214, - 215, 216, 0, 217, 218, 219, 220, 221, 222, 223, - 224, 225, 226, 227, 793, 0, 229, 0, 230, 231, - 232, 233, 0, 234, 0, 235, 236, 0, 237, 238, - 239, 240, 241, 242, 0, 243, 0, 244, 245, 246, - 247, 0, 248, 249, 250, 251, 252, 253, 254, 255, - 256, 257, 258, 259, 0, 260, 261, 262, 263, 264, - 265, 266, 0, 267, 268, 269, 270, 271, 272, 273, - 274, 275, 276, 0, 277, 0, 278, 279, 280, 281, - 282, 283, 284, 285, 286, 287, 288, 0, 0, 289, - 290, 291, 292, 0, 293, 294, 295, 296, 297, 298, - 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, - 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, - 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, - 0, 329, 330, 331, 332, 0, 795, 334, 335, 336, - 337, 338, 0, 339, 340, 0, 0, 341, 342, 343, - 0, 0, 344, 345, 346, 347, 348, 349, 797, 351, - 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, - 0, 0, 0, 0, 362, 363, 798, 365, 366, 367, - 368, 369, 370, 371, 0, 372, 373, 374, 375, 376, - 377, 0, 378, 379, 380, 381, 382, 383, 384, 385, - 386, 387, 0, 388, 389, 390, 391, 392, 393, 394, - 395, 396, 397, 398, 399, 400, 0, 401, 402, 403, - 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, - 414, 415, 416, 417, 418, 419, 420, 0, 0, 421, - 422, 423, 424, 425, 426, 427, 428, 429, 0, 430, - 431, 432, 433, 434, 0, 435, 436, 437, 438, 439, - 440, 441, 442, 443, 444, 445, 446, 447, 448, 800, - 0, 0, 450, 451, 0, 452, 453, 454, 455, 456, - 457, 458, 0, 459, 460, 461, 0, 0, 462, 463, - 801, 465, 802, 0, 467, 468, 803, 470, 471, 472, - 473, 474, 0, 0, 475, 476, 477, 0, 478, 479, - 480, 481, 0, 482, 483, 484, 485, 486, 487, 488, - 489, 0, 490, 491, 492, 493, 494, 495, 496, 497, - 498, 0, 0, 499, 0, 0, 500, 501, 502, 503, - 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, - 514, 515, 516, 517, 518, 519, 520, 117, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 118, 119, 120, 121, - 122, 123, 124, 125, 0, 126, 127, 128, 0, 0, - 0, 0, 0, 0, 0, 0, 129, 130, 131, 0, - 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, - 142, 143, 0, 144, 145, 146, 147, 148, 149, 0, - 0, 150, 151, 152, 153, 154, 155, 156, 0, 157, - 158, 159, 160, 161, 0, 162, 0, 163, 164, 165, - 166, 167, 168, 169, 170, 171, 172, 0, 173, 174, - 175, 176, 177, 178, 0, 179, 180, 181, 182, 183, - 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, - 194, 0, 195, 0, 196, 197, 198, 199, 200, 201, - 0, 0, 202, 203, 204, 205, 0, 0, 206, 207, - 208, 209, 210, 0, 211, 212, 213, 0, 214, 215, - 216, 0, 217, 218, 219, 220, 221, 222, 223, 224, - 225, 226, 227, 228, 0, 229, 0, 230, 231, 232, - 233, 0, 234, 0, 235, 236, 0, 237, 238, 239, - 240, 241, 242, 0, 243, 0, 244, 245, 246, 247, - 0, 248, 249, 250, 251, 252, 253, 254, 255, 256, - 257, 258, 259, 0, 260, 261, 262, 263, 264, 265, - 266, 0, 267, 268, 269, 270, 271, 272, 273, 274, - 275, 276, 0, 277, 0, 278, 279, 280, 281, 282, - 283, 284, 285, 286, 287, 288, 0, 0, 289, 290, - 291, 292, 0, 293, 294, 295, 296, 297, 298, 299, - 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, - 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, - 320, 321, 322, 323, 324, 325, 326, 327, 328, 0, - 329, 330, 331, 332, 0, 333, 334, 335, 336, 337, - 338, 0, 339, 340, 0, 0, 341, 342, 343, 0, - 0, 344, 345, 346, 347, 348, 349, 350, 351, 352, - 353, 354, 355, 356, 357, 358, 359, 360, 361, 0, - 0, 0, 0, 362, 363, 364, 365, 366, 367, 368, - 369, 370, 371, 0, 372, 373, 374, 375, 376, 377, - 0, 378, 379, 380, 381, 382, 383, 384, 385, 386, - 387, 0, 388, 389, 390, 391, 392, 393, 394, 395, - 396, 397, 398, 399, 400, 0, 401, 402, 403, 404, - 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, - 415, 416, 417, 418, 419, 420, 0, 0, 421, 422, - 423, 424, 425, 426, 427, 428, 429, 0, 430, 431, - 432, 433, 434, 0, 435, 436, 437, 438, 439, 440, - 441, 442, 443, 444, 445, 446, 447, 448, 449, 0, - 0, 450, 451, 0, 452, 453, 454, 455, 456, 457, - 458, 0, 459, 460, 461, 0, 0, 462, 463, 464, - 465, 466, 0, 467, 468, 469, 470, 471, 472, 473, - 474, 0, 0, 475, 476, 477, 0, 478, 479, 480, - 481, 0, 482, 483, 484, 485, 486, 487, 488, 489, - 0, 490, 491, 492, 493, 494, 495, 496, 497, 498, - 0, 0, 499, 0, 0, 500, 501, 502, 503, 504, - 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, - 515, 516, 517, 518, 519, 520, 528, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 118, 119, 120, 121, 122, - 123, 124, 125, 0, 126, 127, 128, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 130, 131, 0, 132, - 133, 134, 0, 136, 137, 138, 139, 140, 0, 142, - 143, 0, 144, 145, 146, 147, 148, 149, 0, 0, - 150, 151, 152, 153, 154, 155, 156, 1769, 157, 158, - 159, 160, 161, 0, 0, 1770, 163, 164, 165, 166, - 167, 168, 0, 170, 171, 172, 1771, 173, 174, 175, - 176, 177, 178, 0, 0, 180, 181, 182, 183, 184, - 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, - 0, 195, 0, 196, 197, 198, 199, 200, 201, 0, - 0, 202, 203, 204, 205, 0, 0, 206, 207, 208, - 209, 210, 0, 211, 212, 213, 0, 214, 215, 216, - 0, 217, 218, 219, 220, 221, 222, 223, 224, 225, - 226, 227, 228, 0, 229, 0, 230, 231, 232, 233, - 0, 234, 1772, 235, 0, 0, 0, 238, 239, 529, - 0, 242, 0, 243, 0, 244, 245, 246, 247, 0, - 248, 249, 250, 251, 252, 1773, 254, 0, 256, 257, - 258, 259, 0, 260, 261, 262, 263, 264, 265, 266, - 0, 267, 0, 269, 270, 271, 272, 273, 274, 275, - 276, 0, 277, 0, 278, 0, 0, 281, 0, 283, - 284, 285, 286, 287, 288, 0, 0, 289, 0, 291, - 0, 0, 293, 294, 295, 296, 297, 298, 299, 300, - 530, 302, 303, 304, 305, 306, 307, 308, 309, 310, - 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, - 321, 322, 0, 324, 325, 326, 327, 328, 0, 329, - 330, 0, 332, 0, 333, 334, 335, 336, 337, 338, - 0, 339, 340, 0, 0, 341, 342, 343, 0, 0, - 344, 345, 346, 0, 348, 0, 350, 351, 352, 353, - 354, 355, 356, 357, 358, 359, 360, 361, 0, 0, - 0, 0, 362, 363, 364, 0, 366, 367, 368, 369, - 370, 371, 1774, 372, 373, 374, 375, 376, 377, 0, - 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, - 0, 388, 389, 390, 391, 392, 393, 394, 395, 396, - 397, 398, 399, 400, 0, 401, 402, 0, 404, 405, - 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, - 416, 417, 418, 419, 420, 0, 0, 421, 422, 423, - 424, 425, 426, 427, 428, 429, 0, 0, 431, 432, - 433, 434, 0, 435, 436, 437, 438, 439, 440, 441, - 442, 443, 444, 445, 446, 531, 448, 449, 0, 0, - 450, 451, 0, 452, 0, 454, 455, 456, 457, 458, - 0, 459, 460, 461, 0, 0, 462, 463, 464, 465, - 466, 0, 467, 468, 469, 470, 471, 472, 473, 474, - 0, 1775, 475, 476, 477, 0, 478, 479, 480, 481, - 0, 482, 483, 484, 485, 486, 487, 488, 489, 0, - 490, 0, 492, 493, 494, 495, 496, 497, 498, 0, - 0, 499, 0, 0, 500, 501, 502, 503, 504, 505, - 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, - 516, 517, 518, 519, 520, 528, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 118, 119, 120, 121, 122, 123, - 124, 125, 0, 126, 127, 128, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 130, 131, 0, 132, 133, - 134, 0, 136, 137, 138, 139, 140, 0, 142, 143, - 0, 144, 145, 146, 147, 148, 149, 0, 0, 150, - 151, 152, 153, 154, 155, 156, 1769, 157, 158, 159, - 160, 161, 0, 0, 0, 163, 164, 165, 166, 167, - 168, 0, 170, 171, 172, 1771, 173, 174, 175, 176, - 177, 178, 0, 0, 180, 181, 182, 183, 184, 185, - 186, 187, 188, 189, 190, 191, 192, 193, 194, 0, - 195, 0, 196, 197, 198, 199, 200, 201, 0, 0, - 202, 203, 204, 205, 0, 0, 206, 207, 208, 209, - 210, 0, 211, 212, 213, 0, 214, 215, 216, 0, - 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, - 227, 228, 0, 229, 0, 230, 231, 232, 233, 0, - 234, 1772, 235, 0, 0, 0, 238, 239, 529, 0, - 242, 0, 243, 0, 244, 245, 246, 247, 0, 248, - 249, 250, 251, 252, 253, 254, 0, 256, 257, 258, - 259, 0, 260, 261, 262, 263, 264, 265, 266, 0, - 267, 0, 269, 270, 271, 272, 273, 274, 275, 276, - 0, 277, 0, 278, 0, 0, 281, 0, 283, 284, - 285, 286, 287, 288, 0, 0, 289, 0, 291, 2367, - 0, 293, 294, 295, 296, 297, 298, 299, 300, 530, - 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, - 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, - 322, 0, 324, 325, 326, 327, 328, 0, 329, 330, - 0, 332, 0, 333, 334, 335, 336, 337, 338, 0, - 339, 340, 0, 0, 341, 342, 343, 0, 0, 344, - 345, 346, 0, 348, 0, 350, 351, 352, 353, 354, - 355, 356, 357, 358, 359, 360, 361, 0, 0, 0, - 0, 362, 363, 364, 0, 366, 367, 368, 369, 370, - 371, 1774, 372, 373, 374, 375, 376, 377, 0, 378, - 379, 380, 381, 382, 383, 384, 385, 386, 387, 0, - 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, - 398, 399, 400, 0, 401, 402, 0, 404, 405, 406, - 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, - 417, 418, 419, 420, 0, 0, 421, 422, 423, 424, - 425, 426, 427, 428, 429, 0, 0, 431, 432, 433, - 434, 0, 435, 436, 437, 438, 439, 440, 441, 442, - 443, 444, 445, 446, 531, 448, 449, 0, 0, 450, - 451, 0, 452, 0, 454, 455, 456, 457, 458, 0, - 459, 460, 461, 0, 0, 462, 463, 464, 465, 466, - 0, 467, 468, 469, 470, 471, 472, 473, 474, 0, - 1775, 475, 476, 477, 0, 478, 479, 480, 481, 0, - 482, 483, 484, 485, 486, 487, 488, 489, 0, 490, - 0, 492, 493, 494, 495, 496, 497, 498, 0, 0, - 499, 0, 0, 500, 501, 502, 503, 504, 505, 506, - 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, - 517, 518, 519, 520, 528, 0, 554, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 118, 119, 120, 121, 122, 123, 124, - 125, 0, 126, 127, 128, 3, 4, 0, 0, 0, - 0, 0, 0, 0, 130, 131, 0, 132, 133, 134, - 0, 136, 137, 138, 139, 140, 0, 142, 143, 0, - 144, 145, 146, 147, 148, 149, 0, 0, 150, 151, - 152, 153, 154, 155, 156, 0, 157, 158, 159, 160, - 161, 0, 0, 0, 163, 164, 165, 166, 167, 168, - 0, 170, 171, 172, 0, 173, 174, 175, 176, 177, - 178, 0, 0, 180, 181, 182, 183, 184, 185, 186, - 187, 188, 189, 190, 191, 192, 193, 194, 0, 195, - 0, 196, 197, 198, 199, 200, 201, 0, 0, 202, - 203, 204, 205, 0, 0, 206, 207, 208, 209, 210, - 0, 211, 212, 213, 0, 214, 215, 216, 0, 217, - 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, - 228, 0, 229, 0, 230, 231, 232, 233, 0, 234, - 0, 235, 0, 0, 0, 238, 239, 529, 0, 242, - 0, 243, 0, 244, 245, 246, 247, 0, 248, 249, - 250, 251, 252, 253, 254, 0, 256, 257, 258, 259, - 0, 260, 261, 262, 263, 264, 265, 266, 0, 267, - 0, 269, 270, 271, 272, 273, 274, 275, 276, 0, - 277, 0, 278, 0, 0, 281, 0, 283, 284, 285, - 286, 287, 288, 0, 0, 289, 0, 291, 0, 0, - 293, 294, 295, 296, 297, 298, 299, 300, 530, 302, - 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, - 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, - 0, 324, 325, 326, 327, 328, 0, 329, 330, 0, - 332, 0, 333, 334, 335, 336, 337, 338, 0, 339, - 340, 0, 0, 341, 342, 343, 0, 0, 344, 345, - 346, 0, 348, 0, 350, 351, 352, 353, 354, 355, - 356, 357, 358, 359, 360, 361, 0, 0, 0, 0, - 362, 363, 364, 0, 366, 367, 368, 369, 370, 371, - 0, 372, 373, 374, 375, 376, 377, 0, 378, 379, - 380, 381, 382, 383, 384, 385, 386, 387, 0, 388, - 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, - 399, 400, 0, 401, 402, 0, 404, 405, 406, 407, - 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, - 418, 419, 420, 0, 0, 421, 422, 423, 424, 425, - 426, 427, 428, 429, 0, 0, 431, 432, 433, 434, - 0, 435, 436, 437, 438, 439, 440, 441, 442, 443, - 444, 445, 446, 531, 448, 449, 0, 0, 450, 451, - 0, 452, 0, 454, 455, 456, 457, 458, 0, 459, - 460, 461, 0, 0, 462, 463, 464, 465, 466, 0, - 467, 468, 469, 470, 471, 472, 473, 474, 0, 0, - 475, 476, 477, 0, 478, 479, 480, 481, 0, 482, - 483, 484, 485, 486, 487, 488, 489, 0, 490, 0, - 492, 493, 494, 495, 496, 497, 498, 0, 0, 499, - 0, 0, 500, 501, 502, 503, 504, 505, 506, 507, - 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, - 518, 519, 520, 528, 0, 554, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 118, 119, 120, 121, 122, 123, 124, 125, - 555, 126, 127, 128, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 130, 131, 0, 132, 133, 134, 0, - 136, 137, 138, 139, 140, 0, 142, 143, 0, 144, - 145, 146, 147, 148, 149, 0, 0, 150, 151, 152, - 153, 154, 155, 156, 0, 157, 158, 159, 160, 161, - 0, 0, 0, 163, 164, 165, 166, 167, 168, 0, - 170, 171, 172, 0, 173, 174, 175, 176, 177, 178, - 0, 0, 180, 181, 182, 183, 184, 185, 186, 187, - 188, 189, 190, 191, 192, 193, 194, 0, 195, 0, - 196, 197, 198, 199, 200, 201, 0, 0, 202, 203, - 204, 205, 0, 0, 206, 207, 208, 209, 210, 0, - 211, 212, 213, 0, 214, 215, 216, 0, 217, 218, - 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, - 0, 229, 0, 230, 231, 232, 233, 0, 234, 0, - 235, 0, 0, 0, 238, 239, 529, 0, 242, 0, - 243, 0, 244, 245, 246, 247, 0, 248, 249, 250, - 251, 252, 253, 254, 0, 256, 257, 258, 259, 0, - 260, 261, 262, 263, 264, 265, 266, 0, 267, 0, - 269, 270, 271, 272, 273, 274, 275, 276, 0, 277, - 0, 278, 0, 0, 281, 0, 283, 284, 285, 286, - 287, 288, 0, 0, 289, 0, 291, 0, 0, 293, - 294, 295, 296, 297, 298, 299, 300, 530, 302, 303, - 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, - 314, 315, 316, 317, 318, 319, 320, 321, 322, 0, - 324, 325, 326, 327, 328, 0, 329, 330, 0, 332, - 0, 333, 334, 335, 336, 337, 338, 0, 339, 340, - 0, 0, 341, 342, 343, 0, 0, 344, 345, 346, - 0, 348, 0, 350, 351, 352, 353, 354, 355, 356, - 357, 358, 359, 360, 361, 0, 0, 0, 0, 362, - 363, 364, 0, 366, 367, 368, 556, 370, 371, 0, - 372, 373, 374, 375, 376, 377, 0, 378, 379, 380, - 381, 382, 383, 384, 385, 386, 387, 0, 388, 389, - 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, - 400, 0, 401, 402, 0, 404, 405, 406, 407, 408, - 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, - 419, 420, 0, 0, 421, 422, 423, 424, 425, 426, - 427, 428, 429, 0, 0, 431, 432, 433, 434, 0, - 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, - 445, 446, 531, 448, 449, 0, 0, 450, 451, 0, - 452, 0, 454, 455, 456, 457, 458, 0, 459, 460, - 461, 0, 0, 462, 463, 464, 465, 466, 0, 467, - 468, 469, 470, 471, 472, 473, 474, 0, 0, 475, - 476, 477, 0, 478, 479, 480, 481, 0, 482, 483, - 484, 485, 486, 487, 488, 489, 0, 490, 0, 492, - 493, 494, 495, 496, 497, 498, 0, 0, 499, 0, - 0, 500, 501, 502, 503, 504, 505, 506, 507, 508, - 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, - 519, 520, 528, 0, 554, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 118, 119, 120, 121, 122, 123, 124, 125, 0, - 126, 127, 128, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 130, 131, 0, 132, 133, 134, 0, 136, - 137, 138, 139, 140, 0, 142, 143, 0, 144, 145, - 146, 147, 148, 149, 0, 0, 150, 151, 152, 153, - 154, 155, 156, 0, 157, 158, 159, 160, 161, 0, - 0, 0, 163, 164, 165, 166, 167, 168, 0, 170, - 171, 172, 0, 173, 174, 175, 176, 177, 178, 0, - 0, 180, 181, 182, 183, 184, 185, 186, 187, 188, - 189, 190, 191, 192, 193, 194, 0, 195, 0, 196, - 197, 198, 199, 200, 201, 0, 0, 202, 203, 204, - 205, 0, 0, 206, 207, 208, 209, 210, 0, 211, - 212, 213, 0, 214, 215, 216, 0, 217, 218, 219, - 220, 221, 222, 223, 224, 225, 226, 227, 228, 0, - 229, 0, 230, 231, 232, 233, 0, 234, 0, 235, - 0, 0, 0, 238, 239, 529, 0, 242, 0, 243, - 0, 244, 245, 246, 247, 0, 248, 249, 250, 251, - 252, 253, 254, 0, 256, 257, 258, 259, 0, 260, - 261, 262, 263, 264, 265, 266, 0, 267, 0, 269, - 270, 271, 272, 273, 274, 275, 276, 0, 277, 0, - 278, 0, 0, 281, 0, 283, 284, 285, 286, 287, - 288, 0, 0, 289, 0, 291, 0, 0, 293, 294, - 295, 296, 297, 298, 299, 300, 530, 302, 303, 304, - 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, - 315, 316, 317, 318, 319, 320, 321, 322, 0, 324, - 325, 326, 327, 328, 0, 329, 330, 0, 332, 0, - 333, 334, 335, 336, 337, 338, 0, 339, 340, 0, - 796, 341, 342, 343, 0, 0, 344, 345, 346, 0, - 348, 0, 350, 351, 352, 353, 354, 355, 356, 357, - 358, 359, 360, 361, 0, 0, 0, 0, 362, 363, - 364, 0, 366, 367, 368, 369, 370, 371, 0, 372, - 373, 374, 375, 376, 377, 0, 378, 379, 380, 381, - 382, 383, 384, 385, 386, 387, 0, 388, 389, 390, - 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, - 0, 401, 402, 0, 404, 405, 406, 407, 408, 409, - 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, - 420, 0, 0, 421, 422, 423, 424, 425, 426, 427, - 428, 429, 0, 0, 431, 432, 433, 434, 0, 435, - 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, - 446, 531, 448, 449, 0, 0, 450, 451, 0, 452, - 0, 454, 455, 456, 457, 458, 0, 459, 460, 461, - 0, 0, 462, 463, 464, 465, 466, 0, 467, 468, - 469, 470, 471, 472, 473, 474, 0, 0, 475, 476, - 477, 0, 478, 479, 480, 481, 0, 482, 483, 484, - 485, 486, 487, 488, 489, 0, 490, 0, 492, 493, - 494, 495, 496, 497, 498, 0, 0, 499, 0, 0, - 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, - 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, - 520, 528, 0, 554, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 118, 119, 120, 121, 122, 123, 124, 125, 0, 126, - 127, 128, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 130, 131, 0, 132, 133, 134, 0, 136, 137, - 138, 139, 140, 0, 142, 143, 0, 144, 145, 146, - 147, 148, 149, 0, 0, 150, 151, 152, 153, 154, - 155, 156, 0, 157, 158, 159, 160, 161, 0, 0, - 0, 163, 164, 165, 166, 167, 168, 0, 170, 171, - 172, 0, 173, 174, 175, 176, 177, 178, 0, 0, - 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, - 190, 191, 192, 193, 194, 0, 195, 0, 196, 197, - 198, 199, 200, 201, 0, 0, 202, 203, 204, 205, - 0, 0, 206, 207, 208, 209, 210, 0, 211, 212, - 213, 0, 214, 215, 216, 0, 217, 218, 219, 220, - 221, 222, 223, 224, 225, 226, 227, 228, 0, 229, - 0, 230, 231, 232, 233, 0, 234, 0, 235, 0, - 0, 0, 238, 239, 529, 0, 242, 0, 243, 0, - 244, 245, 246, 247, 0, 248, 249, 250, 251, 252, - 904, 254, 0, 256, 257, 258, 259, 0, 260, 261, - 262, 263, 264, 265, 266, 0, 267, 0, 269, 270, - 271, 272, 273, 274, 275, 276, 0, 277, 0, 278, - 0, 0, 281, 0, 283, 284, 285, 286, 287, 288, - 0, 0, 289, 0, 291, 0, 0, 293, 294, 295, - 296, 297, 298, 299, 300, 530, 302, 303, 304, 305, - 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, - 316, 317, 318, 319, 320, 321, 322, 0, 324, 325, - 326, 327, 328, 0, 329, 330, 0, 332, 0, 333, - 334, 335, 336, 337, 338, 0, 339, 340, 0, 796, - 341, 342, 343, 0, 0, 344, 345, 346, 0, 348, - 0, 350, 351, 352, 353, 354, 355, 356, 357, 358, - 359, 360, 361, 0, 0, 0, 0, 362, 363, 364, - 0, 366, 367, 368, 369, 370, 371, 0, 372, 373, - 374, 375, 376, 377, 0, 378, 379, 380, 381, 382, - 383, 384, 385, 386, 387, 0, 388, 389, 390, 391, - 392, 393, 394, 395, 396, 397, 398, 399, 400, 0, - 401, 402, 0, 404, 405, 406, 407, 408, 409, 410, - 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, - 0, 0, 421, 422, 423, 424, 425, 426, 427, 428, - 429, 0, 0, 431, 432, 433, 434, 0, 435, 436, - 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, - 531, 448, 449, 0, 0, 450, 451, 0, 452, 0, - 454, 455, 456, 457, 458, 0, 459, 460, 461, 0, - 0, 462, 463, 464, 465, 466, 0, 467, 468, 469, - 470, 471, 472, 473, 474, 0, 0, 475, 476, 477, - 0, 478, 479, 480, 481, 0, 482, 483, 484, 485, - 486, 487, 488, 489, 0, 490, 0, 492, 493, 494, - 495, 496, 497, 498, 0, 0, 499, 0, 0, 500, - 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, - 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, - 528, 0, 554, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 118, - 119, 120, 121, 122, 123, 124, 125, 948, 126, 127, - 128, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 130, 131, 0, 132, 133, 134, 0, 136, 137, 138, - 139, 140, 0, 142, 143, 0, 144, 145, 146, 147, - 148, 149, 0, 0, 150, 151, 152, 153, 154, 155, - 156, 0, 157, 158, 159, 160, 161, 0, 0, 0, - 163, 164, 165, 166, 167, 168, 0, 170, 171, 172, - 0, 173, 174, 175, 176, 177, 178, 0, 0, 180, - 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, - 191, 192, 193, 194, 0, 195, 0, 196, 197, 198, - 199, 200, 201, 0, 0, 202, 203, 204, 205, 0, - 0, 206, 207, 208, 209, 210, 0, 211, 212, 213, - 0, 214, 215, 216, 0, 217, 218, 219, 220, 221, - 222, 223, 224, 225, 226, 227, 228, 0, 229, 0, - 230, 231, 232, 233, 0, 234, 0, 235, 0, 0, - 0, 238, 239, 529, 0, 242, 0, 243, 0, 244, - 245, 246, 247, 0, 248, 249, 250, 251, 252, 253, - 254, 0, 256, 257, 258, 259, 0, 260, 261, 262, - 263, 264, 265, 266, 0, 267, 0, 269, 270, 271, - 272, 273, 274, 275, 276, 0, 277, 0, 278, 0, - 0, 281, 0, 283, 284, 285, 286, 287, 288, 0, - 0, 289, 0, 291, 0, 0, 293, 294, 295, 296, - 297, 298, 299, 300, 530, 302, 303, 304, 305, 306, - 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, - 317, 318, 319, 320, 321, 322, 0, 324, 325, 326, - 327, 328, 0, 329, 330, 0, 332, 0, 333, 334, - 335, 336, 337, 338, 0, 339, 340, 0, 0, 341, - 342, 343, 0, 0, 344, 345, 346, 0, 348, 0, - 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, - 360, 361, 0, 0, 0, 0, 362, 363, 364, 0, - 366, 367, 368, 369, 370, 371, 0, 372, 373, 374, - 375, 376, 377, 0, 378, 379, 380, 381, 382, 383, - 384, 385, 386, 387, 0, 388, 389, 390, 391, 392, - 393, 394, 395, 396, 397, 398, 399, 400, 0, 401, - 402, 0, 404, 405, 406, 407, 408, 409, 410, 411, - 412, 413, 414, 415, 416, 417, 418, 419, 420, 0, - 0, 421, 422, 423, 424, 425, 426, 427, 428, 429, - 0, 0, 431, 432, 433, 434, 0, 435, 436, 437, - 438, 439, 440, 441, 442, 443, 444, 445, 446, 531, - 448, 449, 0, 0, 450, 451, 0, 452, 0, 454, - 455, 456, 457, 458, 0, 459, 460, 461, 0, 0, - 462, 463, 464, 465, 466, 0, 467, 468, 469, 470, - 471, 472, 473, 474, 0, 0, 475, 476, 477, 0, - 478, 479, 480, 481, 0, 482, 483, 484, 485, 486, - 487, 488, 489, 0, 490, 0, 492, 493, 494, 495, - 496, 497, 498, 0, 0, 499, 0, 0, 500, 501, - 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, - 512, 513, 514, 515, 516, 517, 518, 519, 520, 528, - 0, 554, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 118, 119, - 120, 121, 122, 123, 124, 125, 0, 126, 127, 128, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 130, - 131, 0, 132, 133, 134, 0, 136, 137, 138, 139, - 140, 0, 142, 143, 0, 144, 145, 146, 147, 148, - 149, 0, 0, 150, 151, 152, 153, 154, 155, 156, - 0, 157, 158, 159, 160, 161, 0, 0, 0, 163, - 164, 165, 166, 167, 168, 0, 170, 171, 172, 0, - 173, 174, 175, 176, 177, 178, 0, 0, 180, 181, - 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, - 192, 193, 194, 0, 195, 0, 196, 197, 198, 199, - 200, 201, 0, 0, 202, 203, 204, 205, 0, 0, - 206, 207, 208, 209, 210, 0, 211, 212, 213, 0, - 214, 215, 216, 0, 217, 218, 219, 220, 221, 222, - 223, 224, 225, 1184, 227, 228, 0, 229, 0, 230, - 231, 232, 233, 0, 234, 0, 235, 0, 0, 0, - 238, 239, 529, 0, 242, 0, 243, 0, 244, 245, - 246, 247, 0, 248, 249, 250, 251, 252, 253, 254, - 0, 256, 257, 258, 259, 0, 260, 261, 262, 263, - 264, 265, 266, 0, 267, 0, 269, 270, 271, 272, - 273, 274, 275, 276, 0, 277, 0, 278, 0, 0, - 281, 0, 283, 284, 285, 286, 287, 288, 0, 0, - 289, 0, 291, 0, 0, 293, 294, 295, 296, 297, - 298, 299, 300, 530, 302, 303, 304, 305, 306, 307, - 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, - 318, 319, 320, 321, 322, 0, 324, 325, 326, 327, - 328, 0, 329, 330, 0, 332, 0, 333, 334, 335, - 336, 337, 338, 0, 339, 340, 0, 796, 341, 342, - 343, 0, 0, 344, 345, 346, 0, 348, 0, 350, - 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, - 361, 0, 0, 0, 0, 362, 363, 364, 0, 366, - 367, 368, 369, 370, 371, 0, 372, 373, 374, 375, - 376, 377, 0, 378, 379, 380, 381, 382, 383, 384, - 385, 386, 387, 0, 388, 389, 390, 391, 392, 393, - 394, 395, 396, 397, 398, 399, 400, 0, 401, 402, - 0, 404, 405, 406, 407, 408, 409, 410, 411, 412, - 413, 414, 415, 416, 417, 418, 419, 420, 0, 0, - 421, 422, 423, 424, 425, 426, 427, 428, 429, 0, - 0, 431, 432, 433, 434, 0, 435, 436, 437, 438, - 439, 440, 441, 442, 443, 444, 445, 446, 531, 448, - 449, 0, 0, 450, 451, 0, 452, 0, 454, 455, - 456, 457, 458, 0, 459, 460, 461, 0, 0, 462, - 463, 464, 465, 466, 0, 467, 468, 469, 470, 471, - 472, 473, 474, 0, 0, 475, 476, 477, 0, 478, - 479, 480, 481, 0, 482, 483, 484, 485, 486, 487, - 488, 489, 0, 490, 0, 492, 493, 494, 495, 496, - 497, 498, 0, 0, 499, 0, 0, 500, 501, 502, - 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, - 513, 514, 515, 516, 517, 518, 519, 520, 528, 0, - 554, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 118, 119, 120, - 121, 122, 123, 124, 125, 0, 126, 127, 128, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 130, 131, - 0, 132, 133, 134, 0, 136, 137, 138, 139, 140, - 0, 142, 143, 0, 144, 145, 146, 147, 148, 149, - 0, 0, 150, 151, 152, 153, 154, 155, 156, 0, - 157, 158, 159, 160, 161, 0, 0, 0, 163, 164, - 165, 166, 167, 168, 0, 170, 171, 172, 0, 173, - 174, 175, 176, 177, 178, 0, 0, 180, 181, 182, - 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, - 193, 194, 0, 195, 0, 196, 197, 198, 199, 200, - 201, 0, 0, 202, 203, 204, 205, 0, 0, 206, - 207, 208, 209, 210, 0, 211, 212, 213, 0, 214, - 215, 216, 0, 217, 218, 219, 220, 221, 222, 223, - 224, 225, 226, 227, 228, 0, 229, 0, 230, 231, - 232, 233, 0, 234, 0, 235, 0, 0, 0, 238, - 239, 529, 0, 1988, 0, 243, 0, 244, 245, 246, - 247, 0, 248, 249, 250, 251, 252, 253, 254, 0, - 256, 257, 258, 259, 0, 260, 261, 262, 263, 264, - 265, 266, 0, 267, 0, 269, 270, 271, 272, 273, - 274, 275, 276, 0, 277, 0, 278, 0, 0, 281, - 0, 283, 284, 285, 286, 287, 288, 0, 0, 289, - 0, 291, 0, 0, 293, 294, 1989, 296, 297, 298, - 299, 300, 530, 302, 303, 304, 305, 306, 307, 308, - 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, - 319, 320, 321, 322, 0, 324, 325, 326, 327, 328, - 0, 329, 330, 0, 332, 0, 333, 334, 335, 336, - 337, 338, 0, 339, 340, 0, 0, 341, 342, 343, - 0, 0, 344, 345, 346, 0, 348, 0, 350, 351, - 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, - 0, 0, 0, 0, 362, 363, 364, 0, 366, 367, - 368, 369, 370, 371, 0, 372, 373, 374, 375, 376, - 377, 0, 378, 379, 380, 381, 382, 383, 384, 385, - 386, 387, 0, 388, 389, 390, 391, 392, 393, 394, - 395, 396, 397, 398, 399, 400, 0, 401, 402, 0, - 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, - 414, 415, 416, 417, 418, 419, 420, 0, 0, 421, - 422, 423, 424, 425, 426, 427, 428, 429, 0, 0, - 431, 432, 433, 434, 0, 435, 436, 437, 438, 439, - 440, 441, 442, 443, 444, 445, 446, 531, 448, 449, - 0, 0, 450, 451, 1990, 452, 0, 454, 1991, 456, - 1992, 458, 0, 459, 460, 461, 0, 0, 462, 463, - 464, 465, 466, 0, 467, 468, 469, 470, 471, 472, - 473, 474, 0, 0, 475, 476, 1993, 0, 478, 479, - 480, 481, 0, 482, 483, 484, 485, 486, 487, 488, - 489, 0, 490, 0, 492, 493, 494, 495, 496, 497, - 498, 0, 0, 499, 0, 0, 500, 501, 502, 503, - 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, - 514, 515, 516, 517, 518, 519, 520, 528, 0, 554, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 118, 119, 120, 121, - 122, 123, 124, 125, 0, 126, 127, 128, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 130, 131, 0, - 132, 133, 134, 0, 136, 137, 138, 139, 140, 0, - 142, 143, 0, 144, 145, 146, 147, 148, 149, 0, - 0, 150, 151, 152, 153, 154, 155, 156, 0, 157, - 158, 159, 160, 161, 0, 0, 0, 163, 164, 165, - 166, 167, 168, 0, 170, 171, 172, 0, 173, 174, - 175, 176, 177, 178, 0, 0, 180, 181, 182, 183, - 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, - 194, 0, 195, 0, 196, 197, 198, 199, 200, 201, - 0, 0, 202, 203, 204, 205, 0, 0, 206, 207, - 208, 209, 210, 0, 211, 212, 213, 0, 214, 215, - 216, 0, 217, 218, 219, 220, 221, 222, 223, 224, - 225, 226, 227, 228, 0, 229, 0, 230, 231, 232, - 233, 0, 234, 0, 235, 0, 0, 0, 238, 239, - 529, 0, 242, 0, 243, 0, 244, 245, 246, 247, - 0, 248, 249, 250, 251, 252, 253, 254, 0, 256, - 257, 258, 259, 0, 260, 261, 262, 263, 264, 265, - 266, 0, 267, 0, 269, 270, 271, 272, 273, 274, - 275, 276, 0, 277, 0, 278, 0, 0, 281, 0, - 283, 284, 285, 286, 287, 288, 0, 0, 289, 0, - 291, 0, 0, 293, 294, 295, 296, 297, 298, 299, - 300, 530, 302, 303, 304, 305, 306, 307, 308, 309, - 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, - 320, 321, 322, 0, 324, 325, 326, 327, 328, 0, - 329, 330, 0, 332, 0, 333, 334, 335, 336, 337, - 338, 0, 339, 340, 0, 0, 341, 342, 343, 0, - 0, 344, 345, 346, 0, 348, 0, 350, 351, 352, - 353, 354, 355, 356, 357, 358, 359, 360, 361, 0, - 0, 0, 0, 362, 363, 364, 0, 366, 367, 368, - 369, 370, 371, 0, 372, 373, 374, 375, 376, 377, - 0, 378, 379, 380, 381, 382, 383, 384, 385, 386, - 387, 0, 388, 389, 390, 391, 392, 393, 394, 395, - 396, 397, 398, 399, 400, 0, 401, 402, 0, 404, - 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, - 415, 416, 417, 418, 419, 420, 0, 0, 421, 422, - 423, 424, 425, 426, 427, 428, 429, 0, 0, 431, - 432, 433, 434, 0, 435, 436, 437, 438, 439, 440, - 441, 442, 443, 444, 445, 446, 531, 448, 449, 0, - 0, 450, 451, 0, 452, 0, 454, 455, 456, 457, - 458, 0, 459, 460, 461, 0, 0, 462, 463, 464, - 465, 466, 0, 467, 468, 469, 470, 471, 472, 473, - 474, 0, 0, 475, 476, 477, 0, 478, 479, 480, - 481, 0, 482, 483, 484, 485, 486, 487, 488, 489, - 0, 490, 0, 492, 493, 494, 495, 496, 497, 498, - 0, 0, 499, 0, 0, 500, 501, 502, 503, 504, - 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, - 515, 516, 517, 518, 519, 520, 528, 0, 821, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 118, 119, 120, 121, 122, - 123, 124, 125, 0, 126, 127, 128, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 130, 131, 0, 132, - 133, 134, 0, 136, 137, 138, 139, 140, 0, 142, - 143, 0, 144, 145, 146, 147, 148, 149, 0, 0, - 150, 151, 152, 153, 154, 155, 156, 0, 157, 158, - 159, 160, 161, 0, 0, 0, 163, 164, 165, 166, - 167, 168, 0, 170, 171, 172, 0, 173, 174, 175, - 176, 177, 178, 0, 0, 180, 181, 182, 183, 184, - 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, - 0, 195, 0, 196, 197, 198, 199, 200, 201, 0, - 0, 202, 203, 204, 205, 0, 0, 206, 207, 208, - 209, 210, 0, 211, 212, 213, 0, 214, 215, 216, - 0, 217, 218, 219, 220, 221, 222, 223, 224, 225, - 226, 227, 228, 0, 229, 0, 230, 231, 232, 233, - 0, 234, 0, 235, 0, 0, 0, 238, 239, 529, - 0, 242, 0, 243, 0, 244, 245, 246, 247, 0, - 248, 249, 250, 251, 252, 253, 254, 0, 256, 257, - 258, 259, 0, 260, 261, 262, 263, 264, 265, 266, - 0, 267, 0, 269, 270, 271, 272, 273, 274, 275, - 276, 0, 277, 0, 278, 0, 0, 281, 0, 283, - 284, 285, 286, 287, 288, 0, 0, 289, 0, 291, - 0, 0, 293, 294, 295, 296, 297, 298, 299, 300, - 530, 302, 303, 304, 305, 306, 307, 308, 309, 310, - 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, - 321, 322, 0, 324, 325, 326, 327, 328, 0, 329, - 330, 0, 332, 0, 333, 334, 335, 336, 337, 338, - 0, 339, 340, 0, 0, 341, 342, 343, 0, 0, - 344, 345, 346, 0, 348, 0, 350, 351, 352, 353, - 354, 355, 356, 357, 358, 359, 360, 361, 0, 0, - 0, 0, 362, 363, 364, 0, 366, 367, 368, 369, - 370, 371, 0, 372, 373, 374, 375, 376, 377, 0, - 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, - 0, 388, 389, 390, 391, 392, 393, 394, 395, 396, - 397, 398, 399, 400, 0, 401, 402, 0, 404, 405, - 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, - 416, 417, 418, 419, 420, 0, 0, 421, 422, 423, - 424, 425, 426, 427, 428, 429, 0, 0, 431, 432, - 433, 434, 0, 435, 436, 437, 438, 439, 440, 441, - 442, 443, 444, 445, 446, 531, 448, 449, 0, 0, - 450, 451, 0, 452, 0, 454, 455, 456, 457, 458, - 0, 459, 460, 461, 0, 0, 462, 463, 464, 465, - 466, 0, 467, 468, 469, 470, 471, 472, 473, 474, - 0, 0, 475, 476, 477, 0, 478, 479, 480, 481, - 0, 482, 483, 484, 485, 486, 487, 488, 489, 0, - 490, 0, 492, 493, 494, 495, 496, 497, 498, 0, - 0, 499, 0, 0, 500, 501, 502, 503, 504, 505, - 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, - 516, 517, 518, 519, 520, 528, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 118, 119, 120, 121, 122, 123, - 124, 125, 827, 126, 127, 128, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 130, 131, 0, 132, 133, - 134, 0, 136, 137, 138, 139, 140, 0, 142, 143, - 0, 144, 145, 146, 147, 148, 149, 0, 0, 150, - 151, 152, 153, 154, 155, 156, 0, 157, 158, 159, - 160, 161, 0, 0, 0, 163, 164, 165, 166, 167, - 168, 0, 170, 171, 172, 0, 173, 174, 175, 176, - 177, 178, 0, 0, 180, 181, 182, 183, 184, 185, - 186, 187, 188, 189, 190, 191, 192, 193, 194, 0, - 195, 0, 196, 197, 198, 199, 200, 201, 0, 0, - 202, 203, 204, 205, 0, 0, 206, 207, 208, 209, - 210, 0, 211, 212, 213, 0, 214, 215, 216, 0, - 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, - 227, 228, 0, 229, 0, 230, 231, 232, 233, 0, - 234, 0, 235, 0, 0, 0, 238, 239, 529, 0, - 828, 0, 243, 0, 244, 245, 246, 247, 0, 248, - 249, 250, 251, 252, 253, 254, 0, 256, 257, 258, - 259, 0, 260, 261, 262, 263, 264, 265, 266, 0, - 267, 0, 269, 270, 271, 272, 273, 274, 275, 276, - 0, 277, 0, 278, 0, 0, 281, 0, 283, 284, - 285, 286, 287, 288, 0, 0, 289, 0, 291, 0, - 0, 293, 294, 829, 296, 297, 298, 299, 300, 530, - 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, - 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, - 322, 0, 324, 325, 326, 327, 328, 0, 329, 330, - 0, 332, 0, 333, 334, 335, 336, 337, 338, 0, - 339, 340, 0, 0, 341, 342, 343, 0, 0, 344, - 345, 346, 0, 348, 0, 350, 351, 352, 353, 354, - 355, 356, 357, 358, 359, 360, 361, 0, 0, 0, - 0, 362, 363, 364, 0, 366, 367, 368, 369, 370, - 371, 0, 372, 373, 374, 375, 376, 377, 0, 378, - 379, 380, 381, 382, 383, 384, 385, 386, 387, 0, - 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, - 398, 399, 400, 0, 401, 402, 0, 404, 405, 406, - 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, - 417, 418, 419, 420, 0, 0, 421, 422, 423, 424, - 830, 426, 427, 428, 429, 0, 0, 431, 432, 433, - 434, 0, 435, 436, 437, 438, 439, 440, 441, 442, - 443, 444, 445, 446, 531, 448, 449, 0, 0, 450, - 451, 0, 452, 0, 454, 455, 456, 457, 458, 0, - 459, 831, 461, 0, 0, 832, 463, 464, 465, 466, - 0, 467, 468, 469, 470, 471, 472, 473, 474, 0, - 0, 475, 476, 477, 0, 478, 479, 480, 481, 0, - 482, 483, 484, 485, 486, 487, 488, 833, 0, 490, - 0, 492, 493, 494, 495, 496, 497, 498, 0, 0, - 499, 0, 0, 500, 501, 502, 503, 504, 505, 506, - 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, - 517, 518, 519, 520, 528, 0, 554, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 118, 119, 120, 121, 122, 123, 124, - 125, 0, 126, 127, 128, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 130, 131, 0, 132, 133, 134, - 0, 136, 137, 138, 139, 140, 0, 142, 143, 0, - 144, 145, 146, 147, 148, 149, 0, 0, 150, 151, - 152, 153, 154, 155, 156, 0, 157, 158, 159, 160, - 161, 0, 0, 0, 163, 164, 165, 166, 167, 168, - 0, 170, 171, 172, 0, 173, 174, 175, 176, 177, - 178, 0, 0, 180, 181, 182, 183, 184, 185, 186, - 187, 188, 189, 190, 191, 192, 193, 194, 0, 195, - 0, 196, 197, 198, 199, 200, 201, 0, 0, 202, - 203, 204, 205, 0, 0, 206, 207, 208, 209, 210, - 0, 211, 212, 213, 0, 214, 215, 216, 0, 217, - 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, - 228, 0, 229, 0, 230, 231, 232, 233, 0, 234, - 0, 235, 0, 0, 0, 238, 239, 529, 0, 242, - 0, 243, 0, 244, 245, 246, 247, 0, 248, 249, - 250, 251, 252, 253, 254, 0, 256, 257, 258, 259, - 0, 260, 261, 262, 263, 264, 265, 266, 0, 267, - 0, 269, 270, 271, 272, 273, 274, 275, 276, 0, - 277, 0, 278, 0, 0, 281, 0, 283, 284, 285, - 286, 287, 288, 0, 0, 289, 0, 291, 0, 0, - 293, 294, 295, 296, 297, 298, 299, 300, 530, 302, - 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, - 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, - 0, 324, 325, 326, 327, 328, 0, 329, 330, 0, - 332, 0, 333, 334, 335, 336, 337, 338, 0, 339, - 340, 0, 0, 341, 342, 343, 0, 0, 344, 345, - 346, 0, 348, 0, 350, 351, 352, 353, 354, 355, - 356, 357, 358, 359, 360, 361, 0, 0, 0, 0, - 362, 363, 364, 0, 366, 367, 368, 369, 370, 371, - 0, 372, 373, 374, 375, 376, 377, 0, 378, 379, - 380, 381, 382, 383, 384, 385, 866, 387, 0, 388, - 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, - 399, 400, 0, 401, 402, 0, 404, 405, 406, 407, - 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, - 418, 419, 420, 0, 0, 421, 422, 423, 424, 425, - 426, 427, 428, 429, 0, 0, 431, 432, 433, 434, - 0, 435, 436, 437, 438, 439, 440, 441, 442, 443, - 444, 445, 446, 531, 448, 449, 0, 0, 450, 451, - 0, 452, 0, 454, 455, 456, 457, 458, 0, 459, - 460, 461, 0, 0, 462, 463, 464, 465, 466, 0, - 467, 468, 469, 470, 471, 472, 473, 474, 0, 0, - 475, 476, 477, 0, 478, 479, 480, 481, 0, 482, - 483, 484, 485, 486, 487, 488, 489, 0, 490, 0, - 492, 493, 494, 495, 496, 497, 498, 0, 0, 499, - 0, 0, 500, 501, 502, 503, 504, 505, 506, 507, - 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, - 518, 519, 520, 528, 0, 554, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 118, 119, 120, 121, 122, 123, 124, 125, - 0, 126, 127, 128, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 130, 131, 0, 132, 133, 134, 0, - 136, 137, 138, 139, 140, 0, 142, 143, 0, 144, - 145, 146, 147, 148, 149, 0, 0, 150, 151, 152, - 153, 154, 155, 156, 0, 157, 158, 159, 160, 161, - 0, 0, 0, 163, 164, 165, 166, 167, 168, 0, - 170, 171, 172, 0, 173, 174, 175, 176, 177, 178, - 0, 0, 180, 181, 182, 183, 184, 185, 186, 187, - 188, 189, 190, 191, 192, 193, 194, 0, 195, 0, - 196, 197, 198, 199, 200, 201, 0, 0, 202, 203, - 204, 205, 0, 0, 206, 207, 208, 209, 210, 0, - 211, 212, 213, 0, 214, 215, 216, 0, 217, 218, - 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, - 0, 229, 0, 230, 231, 232, 233, 0, 234, 0, - 235, 0, 0, 0, 238, 239, 529, 0, 242, 0, - 243, 0, 244, 245, 246, 247, 0, 248, 249, 250, - 251, 252, 899, 254, 0, 256, 257, 258, 259, 0, - 260, 261, 262, 263, 264, 265, 266, 0, 267, 0, - 269, 270, 271, 272, 273, 274, 275, 276, 0, 277, - 0, 278, 0, 0, 281, 0, 283, 284, 285, 286, - 287, 288, 0, 0, 289, 0, 291, 0, 0, 293, - 294, 295, 296, 297, 298, 299, 300, 530, 302, 303, - 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, - 314, 315, 316, 317, 318, 319, 320, 321, 322, 0, - 324, 325, 326, 327, 328, 0, 329, 330, 0, 332, - 0, 333, 334, 335, 336, 337, 338, 0, 339, 340, - 0, 0, 341, 342, 343, 0, 0, 344, 345, 346, - 0, 348, 0, 350, 351, 352, 353, 354, 355, 356, - 357, 358, 359, 360, 361, 0, 0, 0, 0, 362, - 363, 364, 0, 366, 367, 368, 369, 370, 371, 0, - 372, 373, 374, 375, 376, 377, 0, 378, 379, 380, - 381, 382, 383, 384, 385, 386, 387, 0, 388, 389, - 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, - 400, 0, 401, 402, 0, 404, 405, 406, 407, 408, - 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, - 419, 420, 0, 0, 421, 422, 423, 424, 425, 426, - 427, 428, 429, 0, 0, 431, 432, 433, 434, 0, - 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, - 445, 446, 531, 448, 449, 0, 0, 450, 451, 0, - 452, 0, 454, 455, 456, 457, 458, 0, 459, 460, - 461, 0, 0, 462, 463, 464, 465, 466, 0, 467, - 468, 469, 470, 471, 472, 473, 474, 0, 0, 475, - 476, 477, 0, 478, 479, 480, 481, 0, 482, 483, - 484, 485, 486, 487, 488, 489, 0, 490, 0, 492, - 493, 494, 495, 496, 497, 498, 0, 0, 499, 0, - 0, 500, 501, 502, 503, 504, 505, 506, 507, 508, - 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, - 519, 520, 528, 0, 554, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 118, 119, 120, 121, 122, 123, 124, 125, 0, - 126, 127, 128, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 130, 131, 0, 132, 133, 134, 0, 136, - 137, 138, 139, 140, 0, 142, 143, 0, 144, 145, - 146, 147, 148, 149, 0, 0, 150, 151, 152, 153, - 154, 155, 156, 0, 157, 158, 159, 160, 161, 0, - 0, 0, 163, 164, 165, 166, 167, 168, 0, 170, - 171, 172, 0, 173, 174, 175, 176, 177, 178, 0, - 0, 180, 181, 182, 183, 184, 185, 186, 187, 188, - 189, 190, 191, 192, 193, 194, 0, 195, 0, 196, - 197, 198, 199, 200, 201, 0, 0, 202, 203, 204, - 205, 0, 0, 206, 207, 208, 209, 210, 0, 211, - 212, 213, 0, 214, 215, 216, 0, 217, 218, 219, - 220, 221, 222, 223, 224, 225, 226, 227, 228, 0, - 229, 0, 230, 231, 232, 233, 0, 234, 0, 235, - 0, 0, 0, 238, 239, 529, 0, 242, 0, 243, - 0, 244, 245, 246, 247, 0, 248, 249, 250, 251, - 252, 902, 254, 0, 256, 257, 258, 259, 0, 260, - 261, 262, 263, 264, 265, 266, 0, 267, 0, 269, - 270, 271, 272, 273, 274, 275, 276, 0, 277, 0, - 278, 0, 0, 281, 0, 283, 284, 285, 286, 287, - 288, 0, 0, 289, 0, 291, 0, 0, 293, 294, - 295, 296, 297, 298, 299, 300, 530, 302, 303, 304, - 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, - 315, 316, 317, 318, 319, 320, 321, 322, 0, 324, - 325, 326, 327, 328, 0, 329, 330, 0, 332, 0, - 333, 334, 335, 336, 337, 338, 0, 339, 340, 0, - 0, 341, 342, 343, 0, 0, 344, 345, 346, 0, - 348, 0, 350, 351, 352, 353, 354, 355, 356, 357, - 358, 359, 360, 361, 0, 0, 0, 0, 362, 363, - 364, 0, 366, 367, 368, 369, 370, 371, 0, 372, - 373, 374, 375, 376, 377, 0, 378, 379, 380, 381, - 382, 383, 384, 385, 386, 387, 0, 388, 389, 390, - 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, - 0, 401, 402, 0, 404, 405, 406, 407, 408, 409, - 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, - 420, 0, 0, 421, 422, 423, 424, 425, 426, 427, - 428, 429, 0, 0, 431, 432, 433, 434, 0, 435, - 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, - 446, 531, 448, 449, 0, 0, 450, 451, 0, 452, - 0, 454, 455, 456, 457, 458, 0, 459, 460, 461, - 0, 0, 462, 463, 464, 465, 466, 0, 467, 468, - 469, 470, 471, 472, 473, 474, 0, 0, 475, 476, - 477, 0, 478, 479, 480, 481, 0, 482, 483, 484, - 485, 486, 487, 488, 489, 0, 490, 0, 492, 493, - 494, 495, 496, 497, 498, 0, 0, 499, 0, 0, - 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, - 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, - 520, 528, 0, 554, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 118, 119, 120, 121, 122, 123, 124, 125, 0, 126, - 127, 128, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 130, 131, 0, 132, 133, 134, 0, 136, 137, - 138, 139, 140, 0, 142, 143, 0, 144, 145, 146, - 147, 148, 149, 0, 0, 150, 151, 152, 153, 154, - 155, 156, 0, 157, 158, 159, 160, 161, 0, 0, - 0, 163, 164, 165, 166, 167, 168, 0, 170, 171, - 172, 0, 173, 174, 175, 176, 177, 178, 0, 0, - 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, - 190, 191, 192, 193, 194, 0, 195, 0, 196, 197, - 198, 199, 200, 201, 0, 0, 202, 203, 204, 205, - 0, 0, 206, 207, 208, 209, 210, 0, 211, 212, - 213, 0, 214, 215, 216, 0, 217, 218, 219, 220, - 221, 222, 223, 224, 225, 226, 227, 228, 0, 229, - 0, 230, 231, 232, 233, 0, 234, 0, 235, 0, - 0, 0, 238, 239, 529, 0, 242, 0, 243, 0, - 244, 245, 246, 247, 0, 248, 249, 250, 251, 252, - 906, 254, 0, 256, 257, 258, 259, 0, 260, 261, - 262, 263, 264, 265, 266, 0, 267, 0, 269, 270, - 271, 272, 273, 274, 275, 276, 0, 277, 0, 278, - 0, 0, 281, 0, 283, 284, 285, 286, 287, 288, - 0, 0, 289, 0, 291, 0, 0, 293, 294, 295, - 296, 297, 298, 299, 300, 530, 302, 303, 304, 305, - 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, - 316, 317, 318, 319, 320, 321, 322, 0, 324, 325, - 326, 327, 328, 0, 329, 330, 0, 332, 0, 333, - 334, 335, 336, 337, 338, 0, 339, 340, 0, 0, - 341, 342, 343, 0, 0, 344, 345, 346, 0, 348, - 0, 350, 351, 352, 353, 354, 355, 356, 357, 358, - 359, 360, 361, 0, 0, 0, 0, 362, 363, 364, - 0, 366, 367, 368, 369, 370, 371, 0, 372, 373, - 374, 375, 376, 377, 0, 378, 379, 380, 381, 382, - 383, 384, 385, 386, 387, 0, 388, 389, 390, 391, - 392, 393, 394, 395, 396, 397, 398, 399, 400, 0, - 401, 402, 0, 404, 405, 406, 407, 408, 409, 410, - 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, - 0, 0, 421, 422, 423, 424, 425, 426, 427, 428, - 429, 0, 0, 431, 432, 433, 434, 0, 435, 436, - 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, - 531, 448, 449, 0, 0, 450, 451, 0, 452, 0, - 454, 455, 456, 457, 458, 0, 459, 460, 461, 0, - 0, 462, 463, 464, 465, 466, 0, 467, 468, 469, - 470, 471, 472, 473, 474, 0, 0, 475, 476, 477, - 0, 478, 479, 480, 481, 0, 482, 483, 484, 485, - 486, 487, 488, 489, 0, 490, 0, 492, 493, 494, - 495, 496, 497, 498, 0, 0, 499, 0, 0, 500, - 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, - 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, - 528, 0, 554, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 118, - 119, 120, 121, 122, 123, 124, 125, 0, 126, 127, - 128, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 130, 131, 0, 132, 133, 134, 0, 136, 137, 138, - 139, 140, 0, 142, 143, 0, 144, 145, 146, 147, - 148, 149, 0, 0, 150, 151, 152, 153, 154, 155, - 156, 0, 157, 158, 159, 160, 161, 0, 0, 0, - 163, 164, 165, 166, 167, 168, 0, 170, 171, 172, - 0, 173, 174, 175, 176, 177, 178, 0, 0, 180, - 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, - 191, 192, 193, 194, 0, 195, 0, 196, 197, 198, - 199, 200, 201, 0, 0, 202, 203, 204, 205, 0, - 0, 206, 207, 208, 209, 210, 0, 211, 212, 213, - 0, 214, 215, 216, 0, 217, 218, 219, 220, 221, - 222, 223, 224, 225, 226, 227, 228, 0, 229, 0, - 230, 231, 232, 233, 0, 234, 0, 235, 0, 0, - 0, 238, 239, 529, 0, 242, 0, 243, 0, 244, - 245, 246, 247, 0, 248, 249, 250, 251, 252, 936, - 254, 0, 256, 257, 258, 259, 0, 260, 261, 262, - 263, 264, 265, 266, 0, 267, 0, 269, 270, 271, - 272, 273, 274, 275, 276, 0, 277, 0, 278, 0, - 0, 281, 0, 283, 284, 285, 286, 287, 288, 0, - 0, 289, 0, 291, 0, 0, 293, 294, 295, 296, - 297, 298, 299, 300, 530, 302, 303, 304, 305, 306, - 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, - 317, 318, 319, 320, 321, 322, 0, 324, 325, 326, - 327, 328, 0, 329, 330, 0, 332, 0, 333, 334, - 335, 336, 337, 338, 0, 339, 340, 0, 0, 341, - 342, 343, 0, 0, 344, 345, 346, 0, 348, 0, - 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, - 360, 361, 0, 0, 0, 0, 362, 363, 364, 0, - 366, 367, 368, 369, 370, 371, 0, 372, 373, 374, - 375, 376, 377, 0, 378, 379, 380, 381, 382, 383, - 384, 385, 386, 387, 0, 388, 389, 390, 391, 392, - 393, 394, 395, 396, 397, 398, 399, 400, 0, 401, - 402, 0, 404, 405, 406, 407, 408, 409, 410, 411, - 412, 413, 414, 415, 416, 417, 418, 419, 420, 0, - 0, 421, 422, 423, 424, 425, 426, 427, 428, 429, - 0, 0, 431, 432, 433, 434, 0, 435, 436, 437, - 438, 439, 440, 441, 442, 443, 444, 445, 446, 531, - 448, 449, 0, 0, 450, 451, 0, 452, 0, 454, - 455, 456, 457, 458, 0, 459, 460, 461, 0, 0, - 462, 463, 464, 465, 466, 0, 467, 468, 469, 470, - 471, 472, 473, 474, 0, 0, 475, 476, 477, 0, - 478, 479, 480, 481, 0, 482, 483, 484, 485, 486, - 487, 488, 489, 0, 490, 0, 492, 493, 494, 495, - 496, 497, 498, 0, 0, 499, 0, 0, 500, 501, - 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, - 512, 513, 514, 515, 516, 517, 518, 519, 520, 528, - 0, 554, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 118, 119, - 120, 121, 122, 123, 124, 125, 0, 126, 127, 128, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 130, - 131, 0, 132, 133, 134, 0, 136, 137, 138, 139, - 140, 0, 142, 143, 0, 144, 145, 146, 147, 148, - 149, 0, 0, 150, 151, 152, 153, 154, 155, 156, - 0, 157, 158, 159, 160, 161, 0, 0, 0, 163, - 164, 165, 166, 167, 168, 0, 170, 171, 172, 0, - 173, 174, 175, 176, 177, 178, 0, 0, 180, 181, - 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, - 192, 193, 194, 0, 195, 0, 196, 197, 198, 199, - 200, 201, 0, 0, 202, 203, 204, 205, 0, 0, - 206, 207, 208, 209, 210, 0, 211, 212, 213, 0, - 214, 215, 216, 0, 217, 218, 219, 220, 221, 222, - 223, 224, 225, 226, 227, 228, 0, 229, 0, 230, - 231, 232, 233, 0, 234, 0, 235, 0, 0, 0, - 238, 239, 529, 0, 242, 0, 243, 0, 244, 245, - 246, 247, 0, 248, 249, 250, 251, 252, 964, 254, - 0, 256, 257, 258, 259, 0, 260, 261, 262, 263, - 264, 265, 266, 0, 267, 0, 269, 270, 271, 272, - 273, 274, 275, 276, 0, 277, 0, 278, 0, 0, - 281, 0, 283, 284, 285, 286, 287, 288, 0, 0, - 289, 0, 291, 0, 0, 293, 294, 295, 296, 297, - 298, 299, 300, 530, 302, 303, 304, 305, 306, 307, - 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, - 318, 319, 320, 321, 322, 0, 324, 325, 326, 327, - 328, 0, 329, 330, 0, 332, 0, 333, 334, 335, - 336, 337, 338, 0, 339, 340, 0, 0, 341, 342, - 343, 0, 0, 344, 345, 346, 0, 348, 0, 350, - 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, - 361, 0, 0, 0, 0, 362, 363, 364, 0, 366, - 367, 368, 369, 370, 371, 0, 372, 373, 374, 375, - 376, 377, 0, 378, 379, 380, 381, 382, 383, 384, - 385, 386, 387, 0, 388, 389, 390, 391, 392, 393, - 394, 395, 396, 397, 398, 399, 400, 0, 401, 402, - 0, 404, 405, 406, 407, 408, 409, 410, 411, 412, - 413, 414, 415, 416, 417, 418, 419, 420, 0, 0, - 421, 422, 423, 424, 425, 426, 427, 428, 429, 0, - 0, 431, 432, 433, 434, 0, 435, 436, 437, 438, - 439, 440, 441, 442, 443, 444, 445, 446, 531, 448, - 449, 0, 0, 450, 451, 0, 452, 0, 454, 455, - 456, 457, 458, 0, 459, 460, 461, 0, 0, 462, - 463, 464, 465, 466, 0, 467, 468, 469, 470, 471, - 472, 473, 474, 0, 0, 475, 476, 477, 0, 478, - 479, 480, 481, 0, 482, 483, 484, 485, 486, 487, - 488, 489, 0, 490, 0, 492, 493, 494, 495, 496, - 497, 498, 0, 0, 499, 0, 0, 500, 501, 502, - 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, - 513, 514, 515, 516, 517, 518, 519, 520, 528, 0, - 554, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 118, 119, 120, - 121, 122, 123, 124, 125, 0, 126, 127, 128, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 130, 131, - 0, 132, 133, 134, 0, 136, 137, 138, 139, 140, - 0, 142, 143, 0, 144, 145, 146, 147, 148, 149, - 0, 0, 150, 151, 152, 153, 154, 155, 156, 0, - 157, 158, 159, 160, 161, 0, 0, 0, 163, 164, - 165, 166, 167, 168, 0, 170, 171, 172, 0, 173, - 174, 175, 176, 177, 178, 0, 0, 180, 181, 182, - 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, - 193, 194, 0, 195, 0, 196, 197, 198, 199, 200, - 201, 0, 0, 202, 203, 204, 205, 0, 0, 206, - 207, 208, 209, 210, 0, 211, 212, 213, 0, 214, - 215, 216, 0, 217, 218, 219, 220, 221, 222, 223, - 224, 225, 226, 227, 228, 0, 229, 0, 230, 231, - 232, 233, 0, 234, 0, 235, 0, 0, 0, 238, - 239, 529, 0, 242, 0, 243, 0, 244, 245, 246, - 247, 0, 248, 249, 250, 251, 252, 967, 254, 0, - 256, 257, 258, 259, 0, 260, 261, 262, 263, 264, - 265, 266, 0, 267, 0, 269, 270, 271, 272, 273, - 274, 275, 276, 0, 277, 0, 278, 0, 0, 281, - 0, 283, 284, 285, 286, 287, 288, 0, 0, 289, - 0, 291, 0, 0, 293, 294, 295, 296, 297, 298, - 299, 300, 530, 302, 303, 304, 305, 306, 307, 308, - 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, - 319, 320, 321, 322, 0, 324, 325, 326, 327, 328, - 0, 329, 330, 0, 332, 0, 333, 334, 335, 336, - 337, 338, 0, 339, 340, 0, 0, 341, 342, 343, - 0, 0, 344, 345, 346, 0, 348, 0, 350, 351, - 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, - 0, 0, 0, 0, 362, 363, 364, 0, 366, 367, - 368, 369, 370, 371, 0, 372, 373, 374, 375, 376, - 377, 0, 378, 379, 380, 381, 382, 383, 384, 385, - 386, 387, 0, 388, 389, 390, 391, 392, 393, 394, - 395, 396, 397, 398, 399, 400, 0, 401, 402, 0, - 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, - 414, 415, 416, 417, 418, 419, 420, 0, 0, 421, - 422, 423, 424, 425, 426, 427, 428, 429, 0, 0, - 431, 432, 433, 434, 0, 435, 436, 437, 438, 439, - 440, 441, 442, 443, 444, 445, 446, 531, 448, 449, - 0, 0, 450, 451, 0, 452, 0, 454, 455, 456, - 457, 458, 0, 459, 460, 461, 0, 0, 462, 463, - 464, 465, 466, 0, 467, 468, 469, 470, 471, 472, - 473, 474, 0, 0, 475, 476, 477, 0, 478, 479, - 480, 481, 0, 482, 483, 484, 485, 486, 487, 488, - 489, 0, 490, 0, 492, 493, 494, 495, 496, 497, - 498, 0, 0, 499, 0, 0, 500, 501, 502, 503, - 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, - 514, 515, 516, 517, 518, 519, 520, 528, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 118, 119, 120, 121, - 122, 123, 124, 125, 0, 126, 127, 128, 0, 0, - 0, 0, 0, 0, 1010, 0, 0, 130, 131, 0, - 132, 133, 134, 0, 136, 137, 138, 139, 140, 0, - 142, 143, 0, 144, 145, 146, 147, 148, 149, 0, - 0, 150, 151, 152, 153, 154, 155, 156, 0, 157, - 158, 159, 160, 161, 0, 0, 0, 163, 164, 165, - 166, 167, 168, 0, 170, 171, 172, 0, 173, 174, - 175, 176, 177, 178, 0, 0, 180, 181, 182, 183, - 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, - 194, 0, 195, 0, 196, 197, 198, 199, 200, 201, - 0, 0, 202, 203, 204, 205, 0, 0, 206, 207, - 208, 209, 210, 0, 211, 212, 213, 0, 214, 215, - 216, 0, 217, 218, 219, 220, 221, 222, 223, 224, - 225, 226, 227, 228, 0, 229, 0, 230, 231, 232, - 233, 0, 234, 0, 235, 0, 0, 0, 238, 239, - 529, 0, 242, 0, 243, 0, 244, 245, 246, 247, - 0, 248, 249, 250, 251, 252, 253, 254, 0, 256, - 257, 258, 259, 0, 260, 261, 262, 263, 264, 265, - 266, 0, 267, 0, 269, 270, 271, 272, 273, 274, - 275, 276, 0, 277, 0, 278, 0, 0, 281, 0, - 283, 284, 285, 286, 287, 288, 0, 0, 289, 0, - 291, 0, 0, 293, 294, 295, 296, 297, 298, 299, - 300, 530, 302, 303, 304, 305, 306, 307, 308, 309, - 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, - 320, 321, 322, 0, 324, 325, 326, 327, 328, 0, - 329, 330, 0, 332, 0, 333, 334, 335, 336, 337, - 338, 0, 339, 340, 0, 0, 341, 342, 343, 0, - 0, 344, 345, 346, 0, 348, 0, 350, 351, 352, - 353, 354, 355, 356, 357, 358, 359, 360, 361, 0, - 0, 0, 0, 362, 363, 364, 0, 366, 367, 368, - 369, 370, 371, 0, 372, 373, 374, 375, 376, 377, - 0, 378, 379, 380, 381, 382, 383, 384, 385, 386, - 387, 0, 388, 389, 390, 391, 392, 393, 394, 395, - 396, 397, 398, 399, 400, 0, 401, 402, 0, 404, - 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, - 415, 416, 417, 418, 419, 420, 0, 0, 421, 422, - 423, 424, 425, 426, 427, 428, 429, 0, 0, 431, - 432, 433, 434, 0, 435, 436, 437, 438, 439, 440, - 441, 442, 443, 444, 445, 446, 531, 448, 449, 0, - 0, 450, 451, 0, 452, 0, 454, 455, 456, 457, - 458, 0, 459, 460, 461, 0, 0, 462, 463, 464, - 465, 466, 0, 467, 468, 469, 470, 471, 472, 473, - 474, 0, 0, 475, 476, 477, 0, 478, 479, 480, - 481, 0, 482, 483, 484, 485, 486, 487, 488, 489, - 0, 490, 0, 492, 493, 494, 495, 496, 497, 498, - 0, 0, 499, 0, 0, 500, 501, 502, 503, 504, - 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, - 515, 516, 517, 518, 519, 520, 528, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 118, 119, 120, 121, 122, - 123, 124, 125, 0, 126, 127, 128, 0, 0, 0, - 0, 0, 0, 1037, 0, 0, 130, 131, 0, 132, - 133, 134, 0, 136, 137, 138, 139, 140, 0, 142, - 143, 0, 144, 145, 146, 147, 148, 149, 0, 0, - 150, 151, 152, 153, 154, 155, 156, 0, 157, 158, - 159, 160, 161, 0, 0, 0, 163, 164, 165, 166, - 167, 168, 0, 170, 171, 172, 0, 173, 174, 175, - 176, 177, 178, 0, 0, 180, 181, 182, 183, 184, - 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, - 0, 195, 0, 196, 197, 198, 199, 200, 201, 0, - 0, 202, 203, 204, 205, 0, 0, 206, 207, 208, - 209, 210, 0, 211, 212, 213, 0, 214, 215, 216, - 0, 217, 218, 219, 220, 221, 222, 223, 224, 225, - 226, 227, 228, 0, 229, 0, 230, 231, 232, 233, - 0, 234, 0, 235, 0, 0, 0, 238, 239, 529, - 0, 242, 0, 243, 0, 244, 245, 246, 247, 0, - 248, 249, 250, 251, 252, 253, 254, 0, 256, 257, - 258, 259, 0, 260, 261, 262, 263, 264, 265, 266, - 0, 267, 0, 269, 270, 271, 272, 273, 274, 275, - 276, 0, 277, 0, 278, 0, 0, 281, 0, 283, - 284, 285, 286, 287, 288, 0, 0, 289, 0, 291, - 0, 0, 293, 294, 295, 296, 297, 298, 299, 300, - 530, 302, 303, 304, 305, 306, 307, 308, 309, 310, - 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, - 321, 322, 0, 324, 325, 326, 327, 328, 0, 329, - 330, 0, 332, 0, 333, 334, 335, 336, 337, 338, - 0, 339, 340, 0, 0, 341, 342, 343, 0, 0, - 344, 345, 346, 0, 348, 0, 350, 351, 352, 353, - 354, 355, 356, 357, 358, 359, 360, 361, 0, 0, - 0, 0, 362, 363, 364, 0, 366, 367, 368, 369, - 370, 371, 0, 372, 373, 374, 375, 376, 377, 0, - 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, - 0, 388, 389, 390, 391, 392, 393, 394, 395, 396, - 397, 398, 399, 400, 0, 401, 402, 0, 404, 405, - 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, - 416, 417, 418, 419, 420, 0, 0, 421, 422, 423, - 424, 425, 426, 427, 428, 429, 0, 0, 431, 432, - 433, 434, 0, 435, 436, 437, 438, 439, 440, 441, - 442, 443, 444, 445, 446, 531, 448, 449, 0, 0, - 450, 451, 0, 452, 0, 454, 455, 456, 457, 458, - 0, 459, 460, 461, 0, 0, 462, 463, 464, 465, - 466, 0, 467, 468, 469, 470, 471, 472, 473, 474, - 0, 0, 475, 476, 477, 0, 478, 479, 480, 481, - 0, 482, 483, 484, 485, 486, 487, 488, 489, 0, - 490, 0, 492, 493, 494, 495, 496, 497, 498, 0, - 0, 499, 0, 0, 500, 501, 502, 503, 504, 505, - 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, - 516, 517, 518, 519, 520, 528, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 118, 119, 120, 121, 122, 123, - 124, 125, 827, 126, 127, 128, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 130, 131, 0, 132, 133, - 134, 0, 136, 137, 138, 139, 140, 0, 142, 143, - 0, 144, 145, 146, 147, 148, 149, 0, 0, 150, - 151, 152, 153, 154, 155, 156, 0, 157, 158, 159, - 160, 161, 0, 0, 0, 163, 164, 165, 166, 167, - 168, 0, 170, 171, 172, 0, 173, 174, 175, 176, - 177, 178, 0, 0, 180, 181, 182, 183, 184, 185, - 186, 187, 188, 189, 190, 191, 192, 193, 194, 0, - 195, 0, 196, 197, 198, 199, 200, 201, 0, 0, - 202, 203, 204, 205, 0, 0, 206, 207, 208, 209, - 210, 0, 211, 212, 213, 0, 214, 215, 216, 0, - 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, - 227, 228, 0, 229, 0, 230, 231, 232, 233, 0, - 234, 0, 235, 0, 0, 0, 238, 239, 529, 0, - 242, 0, 243, 0, 244, 245, 246, 247, 0, 248, - 249, 250, 251, 252, 253, 254, 0, 256, 257, 258, - 259, 0, 260, 261, 262, 263, 264, 265, 266, 0, - 267, 0, 269, 270, 271, 272, 273, 274, 275, 276, - 0, 277, 0, 278, 0, 0, 281, 0, 283, 284, - 285, 286, 287, 288, 0, 0, 289, 0, 291, 0, - 0, 293, 294, 295, 296, 297, 298, 299, 300, 530, - 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, - 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, - 322, 0, 324, 325, 326, 327, 328, 0, 329, 330, - 0, 332, 0, 333, 334, 335, 336, 337, 338, 0, - 339, 340, 0, 0, 341, 342, 343, 0, 0, 344, - 345, 346, 0, 348, 0, 350, 351, 352, 353, 354, - 355, 356, 357, 358, 359, 360, 361, 0, 0, 0, - 0, 362, 363, 364, 0, 366, 367, 368, 369, 370, - 371, 0, 372, 373, 374, 375, 376, 377, 0, 378, - 379, 380, 381, 382, 383, 384, 385, 386, 387, 0, - 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, - 398, 399, 400, 0, 401, 402, 0, 404, 405, 406, - 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, - 417, 418, 419, 420, 0, 0, 421, 422, 423, 424, - 425, 426, 427, 428, 429, 0, 0, 431, 432, 433, - 434, 0, 435, 436, 437, 438, 439, 440, 441, 442, - 443, 444, 445, 446, 531, 448, 449, 0, 0, 450, - 451, 0, 452, 0, 454, 455, 456, 457, 458, 0, - 459, 831, 461, 0, 0, 832, 463, 464, 465, 466, - 0, 467, 468, 469, 470, 471, 472, 473, 474, 0, - 0, 475, 476, 477, 0, 478, 479, 480, 481, 0, - 482, 483, 484, 485, 486, 487, 488, 489, 0, 490, - 0, 492, 493, 494, 495, 496, 497, 498, 0, 0, - 499, 0, 0, 500, 501, 502, 503, 504, 505, 506, - 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, - 517, 518, 519, 520, 528, 0, 554, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 118, 119, 120, 121, 122, 123, 124, - 125, 0, 126, 127, 128, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 130, 131, 0, 132, 133, 134, - 0, 136, 137, 138, 139, 140, 0, 142, 143, 0, - 144, 145, 146, 147, 148, 149, 0, 0, 150, 151, - 152, 153, 154, 155, 156, 0, 157, 158, 159, 160, - 161, 0, 0, 0, 163, 164, 165, 166, 167, 168, - 0, 170, 171, 172, 0, 173, 174, 175, 176, 177, - 178, 0, 0, 180, 181, 182, 183, 184, 185, 186, - 187, 188, 189, 190, 191, 192, 193, 194, 0, 195, - 0, 196, 197, 198, 199, 200, 201, 0, 0, 202, - 203, 204, 205, 0, 0, 206, 207, 208, 209, 210, - 0, 211, 212, 213, 0, 214, 215, 216, 0, 217, - 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, - 228, 0, 229, 0, 230, 231, 232, 233, 0, 234, - 0, 235, 0, 0, 0, 238, 239, 529, 0, 242, - 0, 243, 0, 244, 245, 246, 247, 0, 248, 249, - 250, 251, 252, 1325, 254, 0, 256, 257, 258, 259, - 0, 260, 261, 262, 263, 264, 265, 266, 0, 267, - 0, 269, 270, 271, 272, 273, 274, 275, 276, 0, - 277, 0, 278, 0, 0, 281, 0, 283, 284, 285, - 286, 287, 288, 0, 0, 289, 0, 291, 0, 0, - 293, 294, 295, 296, 297, 298, 299, 300, 530, 302, - 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, - 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, - 0, 324, 325, 326, 327, 328, 0, 329, 330, 0, - 332, 0, 333, 334, 335, 336, 337, 338, 0, 339, - 340, 0, 0, 341, 342, 343, 0, 0, 344, 345, - 346, 0, 348, 0, 350, 351, 352, 353, 354, 355, - 356, 357, 358, 359, 360, 361, 0, 0, 0, 0, - 362, 363, 364, 0, 366, 367, 368, 369, 370, 371, - 0, 372, 373, 374, 375, 376, 377, 0, 378, 379, - 380, 381, 382, 383, 384, 385, 386, 387, 0, 388, - 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, - 399, 400, 0, 401, 402, 0, 404, 405, 406, 407, - 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, - 418, 419, 420, 0, 0, 421, 422, 423, 424, 425, - 426, 427, 428, 429, 0, 0, 431, 432, 433, 434, - 0, 435, 436, 437, 438, 439, 440, 441, 442, 443, - 444, 445, 446, 531, 448, 449, 0, 0, 450, 451, - 0, 452, 0, 454, 455, 456, 457, 458, 0, 459, - 460, 461, 0, 0, 462, 463, 464, 465, 466, 0, - 467, 468, 469, 470, 471, 472, 473, 474, 0, 0, - 475, 476, 477, 0, 478, 479, 480, 481, 0, 482, - 483, 484, 485, 486, 487, 488, 489, 0, 490, 0, - 492, 493, 494, 495, 496, 497, 498, 0, 0, 499, - 0, 0, 500, 501, 502, 503, 504, 505, 506, 507, - 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, - 518, 519, 520, 528, 0, 554, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 118, 119, 120, 121, 122, 123, 124, 125, - 0, 126, 127, 128, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 130, 131, 0, 132, 133, 134, 0, - 136, 137, 138, 139, 140, 0, 142, 143, 0, 144, - 145, 146, 147, 148, 149, 0, 0, 150, 151, 152, - 153, 154, 155, 156, 0, 157, 158, 159, 160, 161, - 0, 0, 0, 163, 164, 165, 166, 167, 168, 0, - 170, 171, 172, 0, 173, 174, 175, 176, 177, 178, - 0, 0, 180, 181, 182, 183, 184, 185, 186, 187, - 188, 189, 190, 191, 192, 193, 194, 0, 195, 0, - 196, 197, 198, 199, 200, 201, 0, 0, 202, 203, - 204, 205, 0, 0, 206, 207, 208, 209, 210, 0, - 211, 212, 213, 0, 214, 215, 216, 0, 217, 218, - 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, - 0, 229, 0, 230, 231, 232, 233, 0, 234, 0, - 235, 0, 0, 0, 238, 239, 529, 0, 242, 0, - 243, 0, 244, 245, 246, 247, 0, 248, 249, 250, - 251, 252, 1327, 254, 0, 256, 257, 258, 259, 0, - 260, 261, 262, 263, 264, 265, 266, 0, 267, 0, - 269, 270, 271, 272, 273, 274, 275, 276, 0, 277, - 0, 278, 0, 0, 281, 0, 283, 284, 285, 286, - 287, 288, 0, 0, 289, 0, 291, 0, 0, 293, - 294, 295, 296, 297, 298, 299, 300, 530, 302, 303, - 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, - 314, 315, 316, 317, 318, 319, 320, 321, 322, 0, - 324, 325, 326, 327, 328, 0, 329, 330, 0, 332, - 0, 333, 334, 335, 336, 337, 338, 0, 339, 340, - 0, 0, 341, 342, 343, 0, 0, 344, 345, 346, - 0, 348, 0, 350, 351, 352, 353, 354, 355, 356, - 357, 358, 359, 360, 361, 0, 0, 0, 0, 362, - 363, 364, 0, 366, 367, 368, 369, 370, 371, 0, - 372, 373, 374, 375, 376, 377, 0, 378, 379, 380, - 381, 382, 383, 384, 385, 386, 387, 0, 388, 389, - 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, - 400, 0, 401, 402, 0, 404, 405, 406, 407, 408, - 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, - 419, 420, 0, 0, 421, 422, 423, 424, 425, 426, - 427, 428, 429, 0, 0, 431, 432, 433, 434, 0, - 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, - 445, 446, 531, 448, 449, 0, 0, 450, 451, 0, - 452, 0, 454, 455, 456, 457, 458, 0, 459, 460, - 461, 0, 0, 462, 463, 464, 465, 466, 0, 467, - 468, 469, 470, 471, 472, 473, 474, 0, 0, 475, - 476, 477, 0, 478, 479, 480, 481, 0, 482, 483, - 484, 485, 486, 487, 488, 489, 0, 490, 0, 492, - 493, 494, 495, 496, 497, 498, 0, 0, 499, 0, - 0, 500, 501, 502, 503, 504, 505, 506, 507, 508, - 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, - 519, 520, 528, 0, 554, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 118, 119, 120, 121, 122, 123, 124, 125, 0, - 126, 127, 128, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 130, 131, 0, 132, 133, 134, 0, 136, - 137, 138, 139, 140, 0, 142, 143, 0, 144, 145, - 146, 147, 148, 149, 0, 0, 150, 151, 152, 153, - 154, 155, 156, 0, 157, 158, 159, 160, 161, 0, - 0, 0, 163, 164, 165, 166, 167, 168, 0, 170, - 171, 172, 0, 173, 174, 175, 176, 177, 178, 0, - 0, 180, 181, 182, 183, 184, 185, 186, 187, 188, - 189, 190, 191, 192, 193, 194, 0, 195, 0, 196, - 197, 198, 199, 200, 201, 0, 0, 202, 203, 204, - 205, 0, 0, 206, 207, 208, 209, 210, 0, 211, - 212, 213, 0, 214, 215, 216, 0, 217, 218, 219, - 220, 221, 222, 223, 224, 225, 226, 227, 228, 0, - 229, 0, 230, 231, 232, 233, 0, 234, 0, 235, - 0, 0, 0, 238, 239, 529, 0, 242, 0, 243, - 0, 244, 245, 246, 247, 0, 248, 249, 250, 251, - 252, 1330, 254, 0, 256, 257, 258, 259, 0, 260, - 261, 262, 263, 264, 265, 266, 0, 267, 0, 269, - 270, 271, 272, 273, 274, 275, 276, 0, 277, 0, - 278, 0, 0, 281, 0, 283, 284, 285, 286, 287, - 288, 0, 0, 289, 0, 291, 0, 0, 293, 294, - 295, 296, 297, 298, 299, 300, 530, 302, 303, 304, - 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, - 315, 316, 317, 318, 319, 320, 321, 322, 0, 324, - 325, 326, 327, 328, 0, 329, 330, 0, 332, 0, - 333, 334, 335, 336, 337, 338, 0, 339, 340, 0, - 0, 341, 342, 343, 0, 0, 344, 345, 346, 0, - 348, 0, 350, 351, 352, 353, 354, 355, 356, 357, - 358, 359, 360, 361, 0, 0, 0, 0, 362, 363, - 364, 0, 366, 367, 368, 369, 370, 371, 0, 372, - 373, 374, 375, 376, 377, 0, 378, 379, 380, 381, - 382, 383, 384, 385, 386, 387, 0, 388, 389, 390, - 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, - 0, 401, 402, 0, 404, 405, 406, 407, 408, 409, - 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, - 420, 0, 0, 421, 422, 423, 424, 425, 426, 427, - 428, 429, 0, 0, 431, 432, 433, 434, 0, 435, - 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, - 446, 531, 448, 449, 0, 0, 450, 451, 0, 452, - 0, 454, 455, 456, 457, 458, 0, 459, 460, 461, - 0, 0, 462, 463, 464, 465, 466, 0, 467, 468, - 469, 470, 471, 472, 473, 474, 0, 0, 475, 476, - 477, 0, 478, 479, 480, 481, 0, 482, 483, 484, - 485, 486, 487, 488, 489, 0, 490, 0, 492, 493, - 494, 495, 496, 497, 498, 0, 0, 499, 0, 0, - 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, - 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, - 520, 528, 0, 554, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 118, 119, 120, 121, 122, 123, 124, 125, 0, 126, - 127, 128, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 130, 131, 0, 132, 133, 134, 0, 136, 137, - 138, 139, 140, 0, 142, 143, 0, 144, 145, 146, - 147, 148, 149, 0, 0, 150, 151, 152, 153, 154, - 155, 156, 0, 157, 158, 159, 160, 161, 0, 0, - 0, 163, 164, 165, 166, 167, 168, 0, 170, 171, - 172, 0, 173, 174, 175, 176, 177, 178, 0, 0, - 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, - 190, 191, 192, 193, 194, 0, 195, 0, 196, 197, - 198, 199, 200, 201, 0, 0, 202, 203, 204, 205, - 0, 0, 206, 207, 208, 209, 210, 0, 211, 212, - 213, 0, 214, 215, 216, 0, 217, 218, 219, 220, - 221, 222, 223, 224, 225, 226, 227, 228, 0, 229, - 0, 230, 231, 232, 233, 0, 234, 0, 235, 0, - 0, 0, 238, 239, 529, 0, 242, 0, 243, 0, - 244, 245, 246, 247, 0, 248, 249, 250, 251, 252, - 1332, 254, 0, 256, 257, 258, 259, 0, 260, 261, - 262, 263, 264, 265, 266, 0, 267, 0, 269, 270, - 271, 272, 273, 274, 275, 276, 0, 277, 0, 278, - 0, 0, 281, 0, 283, 284, 285, 286, 287, 288, - 0, 0, 289, 0, 291, 0, 0, 293, 294, 295, - 296, 297, 298, 299, 300, 530, 302, 303, 304, 305, - 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, - 316, 317, 318, 319, 320, 321, 322, 0, 324, 325, - 326, 327, 328, 0, 329, 330, 0, 332, 0, 333, - 334, 335, 336, 337, 338, 0, 339, 340, 0, 0, - 341, 342, 343, 0, 0, 344, 345, 346, 0, 348, - 0, 350, 351, 352, 353, 354, 355, 356, 357, 358, - 359, 360, 361, 0, 0, 0, 0, 362, 363, 364, - 0, 366, 367, 368, 369, 370, 371, 0, 372, 373, - 374, 375, 376, 377, 0, 378, 379, 380, 381, 382, - 383, 384, 385, 386, 387, 0, 388, 389, 390, 391, - 392, 393, 394, 395, 396, 397, 398, 399, 400, 0, - 401, 402, 0, 404, 405, 406, 407, 408, 409, 410, - 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, - 0, 0, 421, 422, 423, 424, 425, 426, 427, 428, - 429, 0, 0, 431, 432, 433, 434, 0, 435, 436, - 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, - 531, 448, 449, 0, 0, 450, 451, 0, 452, 0, - 454, 455, 456, 457, 458, 0, 459, 460, 461, 0, - 0, 462, 463, 464, 465, 466, 0, 467, 468, 469, - 470, 471, 472, 473, 474, 0, 0, 475, 476, 477, - 0, 478, 479, 480, 481, 0, 482, 483, 484, 485, - 486, 487, 488, 489, 0, 490, 0, 492, 493, 494, - 495, 496, 497, 498, 0, 0, 499, 0, 0, 500, - 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, - 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, - 528, 0, 554, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 118, - 119, 120, 121, 122, 123, 124, 125, 0, 126, 127, - 128, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 130, 131, 0, 132, 133, 134, 0, 136, 137, 138, - 139, 140, 0, 142, 143, 0, 144, 145, 146, 147, - 148, 149, 0, 0, 150, 151, 152, 153, 154, 155, - 156, 0, 157, 158, 159, 160, 161, 0, 0, 0, - 163, 164, 165, 166, 167, 168, 0, 170, 171, 172, - 0, 173, 174, 175, 176, 177, 178, 0, 0, 180, - 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, - 191, 192, 193, 194, 0, 195, 0, 196, 197, 198, - 199, 200, 201, 0, 0, 202, 203, 204, 205, 0, - 0, 206, 207, 208, 209, 210, 0, 211, 212, 213, - 0, 214, 215, 216, 0, 217, 218, 219, 220, 221, - 222, 223, 224, 225, 226, 227, 228, 0, 229, 0, - 230, 231, 232, 233, 0, 234, 0, 235, 0, 0, - 0, 238, 239, 529, 0, 242, 0, 243, 0, 244, - 245, 246, 247, 0, 248, 249, 250, 251, 252, 2278, - 254, 0, 256, 257, 258, 259, 0, 260, 261, 262, - 263, 264, 265, 266, 0, 267, 0, 269, 270, 271, - 272, 273, 274, 275, 276, 0, 277, 0, 278, 0, - 0, 281, 0, 283, 284, 285, 286, 287, 288, 0, - 0, 289, 0, 291, 0, 0, 293, 294, 295, 296, - 297, 298, 299, 300, 530, 302, 303, 304, 305, 306, - 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, - 317, 318, 319, 320, 321, 322, 0, 324, 325, 326, - 327, 328, 0, 329, 330, 0, 332, 0, 333, 334, - 335, 336, 337, 338, 0, 339, 340, 0, 0, 341, - 342, 343, 0, 0, 344, 345, 346, 0, 348, 0, - 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, - 360, 361, 0, 0, 0, 0, 362, 363, 364, 0, - 366, 367, 368, 369, 370, 371, 0, 372, 373, 374, - 375, 376, 377, 0, 378, 379, 380, 381, 382, 383, - 384, 385, 386, 387, 0, 388, 389, 390, 391, 392, - 393, 394, 395, 396, 397, 398, 399, 400, 0, 401, - 402, 0, 404, 405, 406, 407, 408, 409, 410, 411, - 412, 413, 414, 415, 416, 417, 418, 419, 420, 0, - 0, 421, 422, 423, 424, 425, 426, 427, 428, 429, - 0, 0, 431, 432, 433, 434, 0, 435, 436, 437, - 438, 439, 440, 441, 442, 443, 444, 445, 446, 531, - 448, 449, 0, 0, 450, 451, 0, 452, 0, 454, - 455, 456, 457, 458, 0, 459, 460, 461, 0, 0, - 462, 463, 464, 465, 466, 0, 467, 468, 469, 470, - 471, 472, 473, 474, 0, 0, 475, 476, 477, 0, - 478, 479, 480, 481, 0, 482, 483, 484, 485, 486, - 487, 488, 489, 0, 490, 0, 492, 493, 494, 495, - 496, 497, 498, 0, 0, 499, 0, 0, 500, 501, - 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, - 512, 513, 514, 515, 516, 517, 518, 519, 520, 1501, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 118, 119, - 120, 121, 122, 123, 124, 125, 0, 126, 127, 128, - 0, 0, 0, 1502, 0, 0, -808, 0, 1503, 130, - 131, 0, 132, 133, 134, 1504, 136, 137, 138, 0, - 1505, 1506, 1507, 1508, 0, 144, 145, 146, 147, 148, - 149, 0, 0, 150, 151, 152, 153, 1509, 1510, 156, - 0, 157, 158, 159, 160, 0, 0, 1511, 0, 1512, - 164, 165, 166, 167, 168, 1513, 170, 171, 172, 0, - 173, 174, 175, 176, 177, 178, 0, 1514, 180, 181, - 182, 183, 184, 185, 186, 187, 188, 189, 1515, 191, - 192, 1516, 194, 0, 195, 0, 196, 197, 198, 199, - 200, 201, 0, 0, 202, 203, 204, 205, 0, 0, - 206, 207, 1073, 209, 210, 0, 211, 212, 213, 0, - 214, 215, 216, 0, 217, 218, 219, 220, 0, 222, - 223, 224, 225, 226, 227, 0, 0, 229, 0, 230, - 231, 1517, 233, 0, 234, 0, 235, 1518, 0, 1519, - 238, 239, -808, 1520, 242, 0, 243, 0, 0, 0, - 246, 247, 0, 248, 249, 250, 251, 252, 253, 254, - 1521, 256, 257, 258, 259, 0, 260, 261, 262, 263, - 264, 265, 266, 0, 267, 1522, 0, 270, 271, 272, - 273, 274, 1523, 1524, 0, 1525, 0, 278, 1526, 1527, - 281, 1528, 283, 284, 285, 286, 287, 288, 0, 0, - 289, 1529, 291, 1530, 0, 293, 294, 295, 296, 297, - 298, 299, 300, 1531, 302, 303, 304, 305, 306, 307, - 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, - 318, 319, 320, 321, 1532, 1533, 1534, 325, 326, 327, - 0, 0, 329, 330, 1535, 332, 0, 0, 334, 1536, - 336, 337, 338, 0, 339, 340, 0, 0, 341, 342, - 343, 0, 0, 344, 345, 0, 1537, 348, 1538, 0, - 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, - 361, 0, 0, 0, 0, 362, 363, 0, 1539, 366, - 367, 0, 369, 370, 371, 0, 372, 373, 374, 375, - 376, 377, 0, 378, 379, 380, 381, 382, 1540, 384, - 385, 386, 387, 0, 388, 389, 390, 391, 392, 393, - 394, 395, 396, 397, 398, 399, 400, 0, 401, 402, - 1541, 404, 405, 406, 1542, 408, 409, 410, 411, 412, - 413, 414, 415, 416, 417, 418, 419, 420, 0, 1543, - 421, 422, 423, 424, 425, 426, 1544, 428, 429, 0, - 1545, 431, 432, 1546, 434, 0, 435, 436, 437, 438, - 439, 440, 441, 442, 443, 444, 445, 446, 1547, 448, - 0, 0, 0, 450, 451, 0, 452, 1548, 454, 455, - 456, 457, 458, 0, 459, 1549, 1550, 0, 0, 462, - 463, 0, 465, 0, 0, 467, 468, 1551, 470, 471, - 472, 473, 474, 1552, 0, 475, 476, 477, 0, 478, - 479, 480, 481, 0, 482, 483, 484, 485, 486, 0, - 1553, 489, 0, 490, 1554, 492, 493, 494, 495, 496, - 497, 498, 0, 0, 499, 0, 0, 500, 501, 502, - 503, 504, 505, 528, 0, 554, 0, 0, 0, 0, - 0, 0, 0, 0, 517, 518, 519, 520, 0, 0, - 0, 0, 118, 119, 120, 121, 122, 123, 124, 125, - 0, 126, 127, 128, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 130, 131, 0, 132, 133, 134, 0, - 136, 137, 138, 139, 140, 0, 142, 143, 0, 144, - 145, 146, 147, 148, 149, 0, 0, 150, 151, 152, - 153, 154, 155, 156, 0, 157, 158, 159, 160, 161, - 0, 0, 0, 163, 164, 165, 166, 167, 168, 0, - 170, 171, 172, 0, 173, 174, 175, 176, 177, 178, - 0, 0, 180, 181, 182, 183, 184, 185, 186, 187, - 188, 189, 190, 191, 192, 193, 194, 0, 195, 0, - 196, 197, 198, 199, 200, 201, 0, 0, 202, 203, - 204, 205, 0, 0, 206, 207, 208, 209, 210, 0, - 211, 212, 213, 0, 214, 215, 216, 0, 217, 218, - 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, - 0, 229, 0, 230, 231, 232, 233, 0, 234, 0, - 235, 0, 0, 0, 238, 239, 529, 0, 242, 0, - 243, 0, 244, 245, 246, 247, 0, 248, 249, 250, - 251, 252, 3048, 254, 0, 256, 257, 258, 259, 0, - 260, 261, 262, 263, 264, 265, 266, 0, 267, 0, - 269, 270, 271, 272, 273, 274, 275, 276, 0, 277, - 0, 278, 0, 0, 281, 0, 283, 284, 285, 286, - 287, 288, 0, 0, 289, 0, 291, 0, 0, 293, - 294, 295, 296, 297, 298, 299, 300, 530, 302, 303, - 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, - 314, 315, 316, 317, 318, 319, 320, 321, 322, 0, - 324, 325, 326, 327, 328, 0, 329, 330, 0, 332, - 0, 333, 334, 335, 336, 337, 338, 0, 339, 340, - 0, 0, 341, 342, 343, 0, 0, 344, 345, 346, - 0, 348, 0, 350, 351, 352, 353, 354, 355, 356, - 357, 358, 359, 360, 361, 0, 0, 0, 0, 362, - 363, 364, 0, 366, 367, 368, 369, 370, 371, 0, - 372, 373, 374, 375, 376, 377, 0, 378, 379, 380, - 381, 382, 383, 384, 385, 386, 387, 0, 388, 389, - 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, - 400, 0, 401, 402, 0, 404, 405, 406, 407, 408, - 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, - 419, 420, 0, 0, 421, 422, 423, 424, 425, 426, - 427, 428, 429, 0, 0, 431, 432, 433, 434, 0, - 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, - 445, 446, 531, 448, 449, 0, 0, 450, 451, 0, - 452, 0, 454, 455, 456, 457, 458, 0, 459, 460, - 461, 0, 0, 462, 463, 464, 465, 466, 0, 467, - 468, 469, 470, 471, 472, 473, 474, 0, 0, 475, - 476, 477, 0, 478, 479, 480, 481, 0, 482, 483, - 484, 485, 486, 487, 488, 489, 0, 490, 0, 492, - 493, 494, 495, 496, 497, 498, 0, 0, 499, 0, - 0, 500, 501, 502, 503, 504, 505, 506, 507, 508, - 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, - 519, 520, 528, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 118, 119, 120, 121, 122, 123, 124, 125, 0, - 126, 127, 128, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 130, 131, 0, 132, 133, 134, 0, 136, - 137, 138, 139, 140, 0, 142, 143, 0, 144, 145, - 146, 147, 148, 149, 0, 0, 150, 151, 152, 153, - 154, 155, 156, 0, 157, 158, 159, 160, 161, 0, - 0, 0, 163, 164, 165, 166, 167, 168, 0, 170, - 171, 172, 0, 173, 174, 175, 176, 177, 178, 0, - 0, 180, 181, 182, 183, 184, 185, 186, 187, 188, - 189, 190, 191, 192, 193, 194, 0, 195, 0, 196, - 197, 198, 199, 200, 201, 0, 0, 202, 203, 204, - 205, 0, 0, 206, 207, 208, 209, 210, 0, 211, - 212, 213, 0, 214, 215, 216, 0, 217, 218, 219, - 220, 221, 222, 223, 224, 225, 226, 227, 228, 0, - 229, 0, 230, 231, 232, 233, 0, 234, 0, 235, - 0, 0, 0, 238, 239, 529, 0, 242, 0, 243, - 0, 244, 245, 246, 247, 0, 248, 249, 250, 251, - 252, 253, 254, 0, 256, 257, 258, 259, 0, 260, - 261, 262, 263, 264, 265, 266, 0, 267, 0, 269, - 270, 271, 272, 273, 274, 275, 276, 0, 277, 0, - 278, 0, 0, 281, 0, 283, 284, 285, 286, 287, - 288, 0, 0, 289, 0, 291, 0, 0, 293, 294, - 295, 296, 297, 298, 299, 300, 530, 302, 303, 304, - 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, - 315, 316, 317, 318, 319, 320, 321, 322, 0, 324, - 325, 326, 327, 328, 0, 329, 330, 0, 332, 0, - 333, 334, 335, 336, 337, 338, 0, 339, 340, 0, - 0, 341, 342, 343, 0, 0, 344, 345, 346, 0, - 348, 0, 350, 351, 352, 353, 354, 355, 356, 357, - 358, 359, 360, 361, 0, 0, 0, 0, 362, 363, - 364, 0, 366, 367, 368, 369, 370, 371, 0, 372, - 373, 374, 375, 376, 377, 0, 378, 379, 380, 381, - 382, 383, 384, 385, 386, 387, 0, 388, 389, 390, - 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, - 0, 401, 402, 0, 404, 405, 406, 407, 408, 409, - 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, - 420, 0, 0, 421, 422, 423, 424, 425, 426, 427, - 428, 429, 0, 0, 431, 432, 433, 434, 0, 435, - 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, - 446, 531, 448, 449, 0, 0, 450, 451, 0, 452, - 0, 454, 455, 456, 457, 458, 0, 459, 460, 461, - 0, 0, 462, 463, 464, 465, 466, 0, 467, 468, - 469, 470, 471, 472, 473, 474, 0, 0, 475, 476, - 477, 0, 478, 479, 480, 481, 0, 482, 483, 484, - 485, 486, 487, 488, 489, 0, 490, 0, 492, 493, - 494, 495, 496, 497, 498, 0, 0, 499, 0, 0, - 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, - 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, - 520, 528, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 118, 119, 120, 121, 122, 123, 124, 125, 0, 126, - 127, 128, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 130, 131, 0, 132, 133, 134, 0, 136, 137, - 138, 139, 140, 0, 142, 143, 0, 144, 145, 146, - 147, 148, 149, 0, 0, 150, 151, 152, 153, 154, - 155, 156, 0, 157, 158, 159, 160, 161, 0, 0, - 0, 163, 164, 165, 166, 167, 168, 0, 170, 171, - 172, 0, 173, 174, 175, 176, 177, 178, 0, 0, - 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, - 190, 191, 192, 193, 194, 0, 195, 0, 196, 197, - 198, 199, 200, 201, 0, 0, 202, 203, 204, 205, - 0, 0, 206, 207, 208, 209, 210, 0, 211, 212, - 213, 0, 214, 215, 216, 0, 217, 218, 219, 220, - 221, 222, 223, 224, 225, 226, 227, 228, 0, 229, - 0, 230, 231, 232, 233, 0, 234, 0, 235, 0, - 0, 0, 238, 239, 529, 0, 843, 0, 243, 0, - 244, 245, 246, 247, 0, 248, 249, 250, 251, 252, - 253, 254, 0, 256, 257, 258, 259, 0, 260, 261, - 262, 263, 264, 265, 266, 0, 267, 0, 269, 270, - 271, 272, 273, 274, 275, 276, 0, 277, 0, 278, - 0, 0, 281, 0, 283, 284, 285, 286, 287, 288, - 0, 0, 289, 0, 291, 0, 0, 293, 294, 844, - 296, 297, 298, 299, 300, 530, 302, 303, 304, 305, - 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, - 316, 317, 318, 319, 320, 321, 322, 0, 324, 325, - 326, 327, 328, 0, 329, 330, 0, 332, 0, 333, - 334, 335, 336, 337, 338, 0, 339, 340, 0, 0, - 341, 342, 343, 0, 0, 344, 345, 346, 0, 348, - 0, 350, 351, 352, 353, 354, 355, 356, 357, 358, - 359, 360, 361, 0, 0, 0, 0, 362, 363, 364, - 0, 366, 367, 368, 369, 370, 371, 0, 372, 373, - 374, 375, 376, 377, 0, 378, 379, 380, 381, 382, - 383, 384, 385, 386, 387, 0, 388, 389, 390, 391, - 392, 393, 394, 395, 396, 397, 398, 399, 400, 0, - 401, 402, 0, 404, 405, 406, 407, 408, 409, 410, - 411, 845, 413, 414, 415, 416, 417, 418, 419, 420, - 0, 0, 421, 422, 423, 424, 846, 426, 427, 428, - 429, 0, 0, 431, 432, 433, 434, 0, 435, 436, - 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, - 531, 448, 449, 0, 0, 450, 451, 0, 452, 0, - 454, 455, 456, 457, 458, 0, 459, 847, 461, 0, - 0, 462, 463, 464, 465, 466, 0, 467, 468, 469, - 470, 471, 472, 473, 474, 0, 0, 475, 476, 477, - 0, 478, 479, 480, 481, 0, 482, 483, 484, 485, - 486, 487, 488, 848, 0, 490, 0, 492, 493, 494, - 495, 496, 497, 498, 0, 0, 499, 0, 0, 500, - 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, - 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, - 528, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 118, - 119, 120, 121, 122, 123, 124, 125, 0, 126, 127, - 128, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 130, 131, 0, 132, 133, 134, 0, 136, 137, 138, - 139, 140, 0, 142, 143, 0, 144, 145, 146, 147, - 148, 149, 0, 0, 150, 151, 152, 153, 154, 155, - 156, 0, 157, 158, 159, 160, 161, 0, 0, 0, - 163, 164, 165, 166, 167, 168, 0, 170, 171, 172, - 0, 173, 174, 175, 176, 177, 178, 0, 0, 180, - 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, - 191, 192, 193, 194, 0, 195, 0, 196, 197, 198, - 199, 200, 201, 0, 0, 202, 203, 204, 205, 0, - 0, 206, 207, 208, 209, 210, 0, 211, 212, 213, - 0, 214, 215, 216, 0, 217, 218, 219, 220, 221, - 222, 223, 224, 225, 226, 227, 228, 0, 229, 0, - 230, 231, 232, 233, 0, 234, 0, 235, 0, 0, - 0, 238, 239, 529, 0, 242, 0, 243, 0, 244, - 245, 246, 247, 0, 248, 249, 250, 251, 252, 960, - 254, 0, 256, 257, 258, 259, 0, 260, 261, 262, - 263, 264, 265, 266, 0, 267, 0, 269, 270, 271, - 272, 273, 274, 275, 276, 0, 277, 0, 278, 0, - 0, 281, 0, 283, 284, 285, 286, 287, 288, 0, - 0, 289, 0, 291, 0, 0, 293, 294, 295, 296, - 297, 298, 299, 300, 530, 302, 303, 304, 305, 306, - 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, - 317, 318, 319, 320, 321, 322, 0, 324, 325, 326, - 327, 328, 0, 329, 330, 0, 332, 0, 333, 334, - 335, 336, 337, 338, 0, 339, 340, 0, 0, 341, - 342, 343, 0, 0, 344, 345, 346, 0, 348, 0, - 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, - 360, 361, 0, 0, 0, 0, 362, 363, 364, 0, - 366, 367, 368, 369, 370, 371, 0, 372, 373, 374, - 375, 376, 377, 0, 378, 379, 380, 381, 382, 383, - 384, 385, 386, 387, 0, 388, 389, 390, 391, 392, - 393, 394, 395, 396, 397, 398, 399, 400, 0, 401, - 402, 0, 404, 405, 406, 407, 408, 409, 410, 411, - 412, 413, 414, 415, 416, 417, 418, 419, 420, 0, - 0, 421, 422, 423, 424, 425, 426, 427, 428, 429, - 0, 0, 431, 432, 433, 434, 0, 435, 436, 437, - 438, 439, 440, 441, 442, 443, 444, 445, 446, 531, - 448, 449, 0, 0, 450, 451, 0, 452, 0, 454, - 455, 456, 457, 458, 0, 459, 460, 461, 0, 0, - 462, 463, 464, 465, 466, 0, 467, 468, 469, 470, - 471, 472, 473, 474, 0, 0, 475, 476, 477, 0, - 478, 479, 480, 481, 0, 482, 483, 484, 485, 486, - 487, 488, 489, 0, 490, 0, 492, 493, 494, 495, - 496, 497, 498, 0, 0, 499, 0, 0, 500, 501, - 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, - 512, 513, 514, 515, 516, 517, 518, 519, 520, 528, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 118, 119, - 120, 121, 122, 123, 124, 125, 0, 126, 127, 128, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 130, - 131, 0, 132, 133, 134, 0, 136, 137, 138, 139, - 140, 0, 142, 143, 0, 144, 145, 146, 147, 148, - 149, 0, 0, 150, 151, 152, 153, 154, 155, 156, - 0, 157, 158, 159, 160, 161, 0, 0, 0, 163, - 164, 165, 166, 167, 168, 0, 170, 171, 172, 0, - 173, 174, 175, 176, 177, 178, 0, 0, 180, 181, - 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, - 192, 193, 194, 0, 195, 0, 196, 197, 198, 199, - 200, 201, 0, 0, 202, 203, 204, 205, 0, 0, - 206, 207, 208, 209, 210, 0, 211, 212, 213, 0, - 214, 215, 216, 0, 217, 218, 219, 220, 221, 222, - 223, 224, 225, 226, 227, 228, 0, 229, 0, 230, - 231, 232, 233, 0, 234, 0, 235, 0, 0, 0, - 238, 239, 529, 0, 242, 0, 243, 0, 244, 245, - 246, 247, 0, 248, 249, 250, 251, 252, 253, 254, - 0, 256, 257, 258, 259, 0, 260, 261, 262, 263, - 264, 265, 266, 0, 267, 0, 269, 270, 271, 272, - 273, 274, 275, 276, 0, 277, 0, 278, 0, 0, - 281, 0, 283, 284, 285, 286, 287, 288, 0, 0, - 289, 0, 291, 0, 0, 293, 294, 295, 296, 297, - 298, 299, 300, 530, 302, 303, 304, 305, 306, 307, - 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, - 318, 319, 320, 321, 322, 0, 324, 325, 326, 327, - 328, 0, 329, 330, 0, 332, 0, 333, 334, 335, - 336, 337, 338, 0, 339, 340, 0, 0, 341, 342, - 343, 0, 0, 344, 345, 346, 0, 348, 0, 350, - 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, - 361, 0, 0, 0, 0, 362, 363, 364, 0, 366, - 367, 368, 369, 370, 371, 0, 372, 373, 374, 375, - 376, 377, 0, 378, 379, 380, 381, 382, 383, 384, - 385, 386, 387, 0, 388, 389, 390, 391, 392, 393, - 394, 395, 396, 397, 398, 399, 400, 0, 401, 402, - 0, 404, 405, 406, 407, 408, 409, 410, 411, 845, - 413, 414, 415, 416, 417, 418, 419, 420, 0, 0, - 421, 422, 423, 424, 425, 426, 427, 428, 429, 0, - 0, 431, 432, 433, 434, 0, 435, 436, 437, 438, - 439, 440, 441, 442, 443, 444, 445, 446, 531, 448, - 449, 0, 0, 450, 451, 0, 452, 0, 454, 455, - 456, 457, 458, 0, 459, 847, 461, 0, 0, 462, - 463, 464, 465, 466, 0, 467, 468, 469, 470, 471, - 472, 473, 474, 0, 0, 475, 476, 477, 0, 478, - 479, 480, 481, 0, 482, 483, 484, 485, 486, 487, - 488, 489, 0, 490, 0, 492, 493, 494, 495, 496, - 497, 498, 0, 0, 499, 0, 0, 500, 501, 502, - 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, - 513, 514, 515, 516, 517, 518, 519, 520, 528, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 118, 119, 120, - 121, 122, 123, 124, 125, 0, 126, 127, 128, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 130, 131, - 0, 132, 133, 134, 0, 136, 137, 138, 139, 140, - 0, 142, 143, 0, 144, 145, 146, 147, 148, 149, - 0, 0, 150, 151, 152, 153, 154, 155, 156, 0, - 157, 158, 159, 160, 161, 0, 0, 0, 163, 164, - 165, 166, 167, 168, 0, 170, 171, 172, 0, 173, - 174, 175, 176, 177, 178, 0, 0, 180, 181, 182, - 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, - 193, 194, 0, 195, 0, 196, 197, 198, 199, 200, - 201, 0, 0, 202, 203, 204, 205, 0, 0, 206, - 207, 208, 209, 210, 0, 211, 212, 213, 0, 214, - 215, 216, 0, 217, 218, 219, 220, 221, 222, 223, - 224, 225, 226, 227, 228, 0, 229, 0, 230, 231, - 232, 233, 0, 234, 0, 235, 0, 0, 0, 238, - 239, 529, 0, 242, 0, 243, 0, 244, 245, 246, - 247, 0, 248, 249, 250, 251, 252, 1321, 254, 0, - 256, 257, 258, 259, 0, 260, 261, 262, 263, 264, - 265, 266, 0, 267, 0, 269, 270, 271, 272, 273, - 274, 275, 276, 0, 277, 0, 278, 0, 0, 281, - 0, 283, 284, 285, 286, 287, 288, 0, 0, 289, - 0, 291, 0, 0, 293, 294, 295, 296, 297, 298, - 299, 300, 530, 302, 303, 304, 305, 306, 307, 308, - 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, - 319, 320, 321, 322, 0, 324, 325, 326, 327, 328, - 0, 329, 330, 0, 332, 0, 333, 334, 335, 336, - 337, 338, 0, 339, 340, 0, 0, 341, 342, 343, - 0, 0, 344, 345, 346, 0, 348, 0, 350, 351, - 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, - 0, 0, 0, 0, 362, 363, 364, 0, 366, 367, - 368, 369, 370, 371, 0, 372, 373, 374, 375, 376, - 377, 0, 378, 379, 380, 381, 382, 383, 384, 385, - 386, 387, 0, 388, 389, 390, 391, 392, 393, 394, - 395, 396, 397, 398, 399, 400, 0, 401, 402, 0, - 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, - 414, 415, 416, 417, 418, 419, 420, 0, 0, 421, - 422, 423, 424, 425, 426, 427, 428, 429, 0, 0, - 431, 432, 433, 434, 0, 435, 436, 437, 438, 439, - 440, 441, 442, 443, 444, 445, 446, 531, 448, 449, - 0, 0, 450, 451, 0, 452, 0, 454, 455, 456, - 457, 458, 0, 459, 460, 461, 0, 0, 462, 463, - 464, 465, 466, 0, 467, 468, 469, 470, 471, 472, - 473, 474, 0, 0, 475, 476, 477, 0, 478, 479, - 480, 481, 0, 482, 483, 484, 485, 486, 487, 488, - 489, 0, 490, 0, 492, 493, 494, 495, 496, 497, - 498, 0, 0, 499, 0, 0, 500, 501, 502, 503, - 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, - 514, 515, 516, 517, 518, 519, 520, 528, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 118, 119, 120, 121, - 122, 123, 124, 125, 0, 126, 127, 128, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 130, 131, 0, - 132, 133, 134, 0, 136, 137, 138, 139, 140, 0, - 142, 143, 0, 144, 145, 146, 147, 148, 149, 0, - 0, 150, 151, 152, 153, 154, 155, 156, 0, 157, - 158, 159, 160, 161, 0, 0, 0, 163, 164, 165, - 166, 167, 168, 0, 170, 171, 172, 0, 173, 174, - 175, 176, 177, 178, 0, 0, 180, 181, 182, 183, - 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, - 194, 0, 195, 0, 196, 197, 198, 199, 200, 201, - 0, 0, 202, 203, 204, 205, 0, 0, 206, 207, - 208, 209, 210, 0, 211, 212, 213, 0, 214, 215, - 216, 0, 217, 218, 219, 220, 221, 222, 223, 224, - 225, 226, 227, 228, 0, 229, 0, 230, 231, 232, - 233, 0, 234, 0, 235, 0, 0, 0, 238, 239, - 529, 0, 242, 0, 243, 0, 244, 245, 246, 247, - 0, 248, 249, 250, 251, 252, 1342, 254, 0, 256, - 257, 258, 259, 0, 260, 261, 262, 263, 264, 265, - 266, 0, 267, 0, 269, 270, 271, 272, 273, 274, - 275, 276, 0, 277, 0, 278, 0, 0, 281, 0, - 283, 284, 285, 286, 287, 288, 0, 0, 289, 0, - 291, 0, 0, 293, 294, 295, 296, 297, 298, 299, - 300, 530, 302, 303, 304, 305, 306, 307, 308, 309, - 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, - 320, 321, 322, 0, 324, 325, 326, 327, 328, 0, - 329, 330, 0, 332, 0, 333, 334, 335, 336, 337, - 338, 0, 339, 340, 0, 0, 341, 342, 343, 0, - 0, 344, 345, 346, 0, 348, 0, 350, 351, 352, - 353, 354, 355, 356, 357, 358, 359, 360, 361, 0, - 0, 0, 0, 362, 363, 364, 0, 366, 367, 368, - 369, 370, 371, 0, 372, 373, 374, 375, 376, 377, - 0, 378, 379, 380, 381, 382, 383, 384, 385, 386, - 387, 0, 388, 389, 390, 391, 392, 393, 394, 395, - 396, 397, 398, 399, 400, 0, 401, 402, 0, 404, - 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, - 415, 416, 417, 418, 419, 420, 0, 0, 421, 422, - 423, 424, 425, 426, 427, 428, 429, 0, 0, 431, - 432, 433, 434, 0, 435, 436, 437, 438, 439, 440, - 441, 442, 443, 444, 445, 446, 531, 448, 449, 0, - 0, 450, 451, 0, 452, 0, 454, 455, 456, 457, - 458, 0, 459, 460, 461, 0, 0, 462, 463, 464, - 465, 466, 0, 467, 468, 469, 470, 471, 472, 473, - 474, 0, 0, 475, 476, 477, 0, 478, 479, 480, - 481, 0, 482, 483, 484, 485, 486, 487, 488, 489, - 0, 490, 0, 492, 493, 494, 495, 496, 497, 498, - 0, 0, 499, 0, 0, 500, 501, 502, 503, 504, - 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, - 515, 516, 517, 518, 519, 520, 528, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 118, 119, 120, 121, 122, - 123, 124, 125, 0, 126, 127, 128, 0, 0, 0, - 0, 0, 0, 1697, 0, 0, 130, 131, 0, 132, - 133, 134, 0, 136, 137, 138, 139, 140, 0, 142, - 143, 0, 144, 145, 146, 147, 148, 149, 0, 0, - 150, 151, 152, 153, 154, 155, 156, 0, 157, 158, - 159, 160, 161, 0, 0, 0, 163, 164, 165, 166, - 167, 168, 0, 170, 171, 172, 0, 173, 174, 175, - 176, 177, 178, 0, 0, 180, 181, 182, 183, 184, - 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, - 0, 195, 0, 196, 197, 198, 199, 200, 201, 0, - 0, 202, 203, 204, 205, 0, 0, 206, 207, 208, - 209, 210, 0, 211, 212, 213, 0, 214, 215, 216, - 0, 217, 218, 219, 220, 221, 222, 223, 224, 225, - 226, 227, 228, 0, 229, 0, 230, 231, 232, 233, - 0, 234, 0, 235, 0, 0, 0, 238, 239, 529, - 0, 242, 0, 243, 0, 244, 245, 246, 247, 0, - 248, 249, 250, 251, 252, 253, 254, 0, 256, 257, - 258, 259, 0, 260, 261, 262, 263, 264, 265, 266, - 0, 267, 0, 269, 270, 271, 272, 273, 274, 275, - 276, 0, 277, 0, 278, 0, 0, 281, 0, 283, - 284, 285, 286, 287, 288, 0, 0, 289, 0, 291, - 0, 0, 293, 294, 295, 296, 297, 298, 299, 300, - 530, 302, 303, 304, 305, 306, 307, 308, 309, 310, - 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, - 321, 322, 0, 324, 325, 326, 327, 328, 0, 329, - 330, 0, 332, 0, 333, 334, 335, 336, 337, 338, - 0, 339, 340, 0, 0, 341, 342, 343, 0, 0, - 344, 345, 346, 0, 348, 0, 350, 351, 352, 353, - 354, 355, 356, 357, 358, 359, 360, 361, 0, 0, - 0, 0, 362, 363, 364, 0, 366, 367, 368, 369, - 370, 371, 0, 372, 373, 374, 375, 376, 377, 0, - 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, - 0, 388, 389, 390, 391, 392, 393, 394, 395, 396, - 397, 398, 399, 400, 0, 401, 402, 0, 404, 405, - 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, - 416, 417, 418, 419, 420, 0, 0, 421, 422, 423, - 424, 425, 0, 427, 428, 429, 0, 0, 431, 432, - 433, 434, 0, 435, 436, 437, 438, 439, 440, 441, - 442, 443, 444, 445, 446, 531, 448, 449, 0, 0, - 450, 451, 0, 452, 0, 454, 455, 456, 457, 458, - 0, 459, 460, 461, 0, 0, 462, 463, 464, 465, - 466, 0, 467, 468, 469, 470, 471, 472, 473, 474, - 0, 0, 475, 476, 477, 0, 478, 479, 480, 481, - 0, 482, 483, 484, 485, 486, 487, 488, 489, 0, - 490, 0, 492, 493, 494, 495, 496, 497, 498, 0, - 0, 499, 0, 0, 500, 501, 502, 503, 504, 505, - 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, - 516, 517, 518, 519, 520, 528, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 118, 119, 120, 121, 122, 123, - 124, 125, 0, 126, 127, 128, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 130, 131, 0, 132, 133, - 134, 0, 136, 137, 138, 139, 140, 0, 142, 143, - 0, 144, 145, 146, 147, 148, 149, 0, 0, 150, - 151, 152, 153, 154, 155, 156, 0, 157, 158, 159, - 160, 161, 0, 0, 0, 163, 164, 165, 166, 167, - 168, 0, 170, 171, 172, 0, 173, 174, 175, 176, - 177, 178, 0, 0, 180, 181, 182, 183, 184, 185, - 186, 187, 188, 189, 190, 191, 192, 193, 194, 0, - 195, 0, 196, 197, 198, 199, 200, 201, 0, 0, - 202, 203, 204, 205, 0, 0, 206, 207, 208, 209, - 210, 0, 211, 212, 213, 0, 214, 215, 216, 0, - 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, - 227, 228, 0, 229, 0, 230, 231, 232, 233, 0, - 234, 0, 235, 0, 0, 0, 238, 239, 529, 0, - 242, 0, 243, 0, 244, 245, 246, 247, 0, 248, - 249, 250, 251, 252, 1883, 254, 0, 256, 257, 258, - 259, 0, 260, 261, 262, 263, 264, 265, 266, 0, - 267, 0, 269, 270, 271, 272, 273, 274, 275, 276, - 0, 277, 0, 278, 0, 0, 281, 0, 283, 284, - 285, 286, 287, 288, 0, 0, 289, 0, 291, 0, - 0, 293, 294, 295, 296, 297, 298, 299, 300, 530, - 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, - 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, - 322, 0, 324, 325, 326, 327, 328, 0, 329, 330, - 0, 332, 0, 333, 334, 335, 336, 337, 338, 0, - 339, 340, 0, 0, 341, 342, 343, 0, 0, 344, - 345, 346, 0, 348, 0, 350, 351, 352, 353, 354, - 355, 356, 357, 358, 359, 360, 361, 0, 0, 0, - 0, 362, 363, 364, 0, 366, 367, 368, 369, 370, - 371, 0, 372, 373, 374, 375, 376, 377, 0, 378, - 379, 380, 381, 382, 383, 384, 385, 386, 387, 0, - 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, - 398, 399, 400, 0, 401, 402, 0, 404, 405, 406, - 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, - 417, 418, 419, 420, 0, 0, 421, 422, 423, 424, - 425, 426, 427, 428, 429, 0, 0, 431, 432, 433, - 434, 0, 435, 436, 437, 438, 439, 440, 441, 442, - 443, 444, 445, 446, 531, 448, 449, 0, 0, 450, - 451, 0, 452, 0, 454, 455, 456, 457, 458, 0, - 459, 460, 461, 0, 0, 462, 463, 464, 465, 466, - 0, 467, 468, 469, 470, 471, 472, 473, 474, 0, - 0, 475, 476, 477, 0, 478, 479, 480, 481, 0, - 482, 483, 484, 485, 486, 487, 488, 489, 0, 490, - 0, 492, 493, 494, 495, 496, 497, 498, 0, 0, - 499, 0, 0, 500, 501, 502, 503, 504, 505, 506, - 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, - 517, 518, 519, 520, 528, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 118, 119, 120, 121, 122, 123, 124, - 125, 0, 126, 127, 128, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 130, 131, 0, 132, 133, 134, - 0, 136, 137, 138, 139, 140, 0, 142, 143, 0, - 144, 145, 146, 147, 148, 149, 0, 0, 150, 151, - 152, 153, 154, 155, 156, 0, 157, 158, 159, 160, - 161, 0, 0, 0, 163, 164, 165, 166, 167, 168, - 0, 170, 171, 172, 0, 173, 174, 175, 176, 177, - 178, 0, 0, 180, 181, 182, 183, 184, 185, 186, - 187, 188, 189, 190, 191, 192, 193, 194, 0, 195, - 0, 196, 197, 198, 199, 200, 201, 0, 0, 202, - 203, 204, 205, 0, 0, 206, 207, 208, 209, 210, - 0, 211, 212, 213, 0, 214, 215, 216, 0, 217, - 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, - 228, 0, 229, 0, 230, 231, 232, 233, 0, 234, - 0, 235, 0, 0, 0, 238, 239, 529, 0, 242, - 0, 243, 0, 244, 245, 246, 247, 0, 248, 249, - 250, 251, 252, 2265, 254, 0, 256, 257, 258, 259, - 0, 260, 261, 262, 263, 264, 265, 266, 0, 267, - 0, 269, 270, 271, 272, 273, 274, 275, 276, 0, - 277, 0, 278, 0, 0, 281, 0, 283, 284, 285, - 286, 287, 288, 0, 0, 289, 0, 291, 0, 0, - 293, 294, 295, 296, 297, 298, 299, 300, 530, 302, - 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, - 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, - 0, 324, 325, 326, 327, 328, 0, 329, 330, 0, - 332, 0, 333, 334, 335, 336, 337, 338, 0, 339, - 340, 0, 0, 341, 342, 343, 0, 0, 344, 345, - 346, 0, 348, 0, 350, 351, 352, 353, 354, 355, - 356, 357, 358, 359, 360, 361, 0, 0, 0, 0, - 362, 363, 364, 0, 366, 367, 368, 369, 370, 371, - 0, 372, 373, 374, 375, 376, 377, 0, 378, 379, - 380, 381, 382, 383, 384, 385, 386, 387, 0, 388, - 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, - 399, 400, 0, 401, 402, 0, 404, 405, 406, 407, - 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, - 418, 419, 420, 0, 0, 421, 422, 423, 424, 425, - 426, 427, 428, 429, 0, 0, 431, 432, 433, 434, - 0, 435, 436, 437, 438, 439, 440, 441, 442, 443, - 444, 445, 446, 531, 448, 449, 0, 0, 450, 451, - 0, 452, 0, 454, 455, 456, 457, 458, 0, 459, - 460, 461, 0, 0, 462, 463, 464, 465, 466, 0, - 467, 468, 469, 470, 471, 472, 473, 474, 0, 0, - 475, 476, 477, 0, 478, 479, 480, 481, 0, 482, - 483, 484, 485, 486, 487, 488, 489, 0, 490, 0, - 492, 493, 494, 495, 496, 497, 498, 0, 0, 499, - 0, 0, 500, 501, 502, 503, 504, 505, 506, 507, - 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, - 518, 519, 520, 528, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 118, 119, 120, 121, 122, 123, 124, 125, - 0, 126, 127, 128, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 130, 131, 0, 132, 133, 134, 0, - 136, 137, 138, 139, 140, 0, 142, 143, 0, 144, - 145, 146, 147, 148, 149, 0, 0, 150, 151, 152, - 153, 154, 155, 156, 0, 157, 158, 159, 160, 161, - 0, 0, 0, 163, 164, 165, 166, 167, 168, 0, - 170, 171, 172, 0, 173, 174, 175, 176, 177, 178, - 0, 0, 180, 181, 182, 183, 184, 185, 186, 187, - 188, 189, 190, 191, 192, 193, 194, 0, 195, 0, - 196, 197, 198, 199, 200, 201, 0, 0, 202, 203, - 204, 205, 0, 0, 206, 207, 208, 209, 210, 0, - 211, 212, 213, 0, 214, 215, 216, 0, 217, 218, - 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, - 0, 229, 0, 230, 231, 232, 233, 0, 234, 0, - 235, 0, 0, 0, 238, 239, 529, 0, 242, 0, - 243, 0, 244, 245, 246, 247, 0, 248, 249, 250, - 251, 252, 2280, 254, 0, 256, 257, 258, 259, 0, - 260, 261, 262, 263, 264, 265, 266, 0, 267, 0, - 269, 270, 271, 272, 273, 274, 275, 276, 0, 277, - 0, 278, 0, 0, 281, 0, 283, 284, 285, 286, - 287, 288, 0, 0, 289, 0, 291, 0, 0, 293, - 294, 295, 296, 297, 298, 299, 300, 530, 302, 303, - 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, - 314, 315, 316, 317, 318, 319, 320, 321, 322, 0, - 324, 325, 326, 327, 328, 0, 329, 330, 0, 332, - 0, 333, 334, 335, 336, 337, 338, 0, 339, 340, - 0, 0, 341, 342, 343, 0, 0, 344, 345, 346, - 0, 348, 0, 350, 351, 352, 353, 354, 355, 356, - 357, 358, 359, 360, 361, 0, 0, 0, 0, 362, - 363, 364, 0, 366, 367, 368, 369, 370, 371, 0, - 372, 373, 374, 375, 376, 377, 0, 378, 379, 380, - 381, 382, 383, 384, 385, 386, 387, 0, 388, 389, - 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, - 400, 0, 401, 402, 0, 404, 405, 406, 407, 408, - 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, - 419, 420, 0, 0, 421, 422, 423, 424, 425, 426, - 427, 428, 429, 0, 0, 431, 432, 433, 434, 0, - 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, - 445, 446, 531, 448, 449, 0, 0, 450, 451, 0, - 452, 0, 454, 455, 456, 457, 458, 0, 459, 460, - 461, 0, 0, 462, 463, 464, 465, 466, 0, 467, - 468, 469, 470, 471, 472, 473, 474, 0, 0, 475, - 476, 477, 0, 478, 479, 480, 481, 0, 482, 483, - 484, 485, 486, 487, 488, 489, 0, 490, 0, 492, - 493, 494, 495, 496, 497, 498, 0, 0, 499, 0, - 0, 500, 501, 502, 503, 504, 505, 506, 507, 508, - 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, - 519, 520, 1501, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 118, 119, 120, 121, 122, 123, 124, 125, 0, - 126, 127, 128, 0, 0, 0, 1502, 0, 0, 0, - 0, 1503, 130, 131, 0, 132, 133, 134, 1504, 136, - 137, 138, 0, 1505, 1506, 1507, 1508, 0, 144, 145, - 146, 147, 148, 149, 0, 0, 150, 151, 152, 153, - 1509, 1510, 156, 0, 157, 158, 159, 160, 0, 0, - 1511, 0, 1512, 164, 165, 166, 167, 168, 1513, 170, - 171, 172, 0, 173, 174, 175, 176, 177, 178, 0, - 1514, 180, 181, 182, 183, 184, 185, 186, 187, 188, - 189, 1515, 191, 192, 1516, 194, 0, 195, 0, 196, - 197, 198, 199, 200, 201, 0, 0, 202, 203, 204, - 205, 0, 0, 206, 207, 1073, 209, 210, 0, 211, - 212, 213, 0, 214, 215, 216, 0, 217, 218, 219, - 220, 0, 222, 223, 224, 225, 226, 227, 0, 0, - 229, 0, 230, 231, 1517, 233, 0, 234, 0, 235, - 1518, 0, 1519, 238, 239, 0, 1520, 242, 0, 243, - 0, 0, 0, 246, 247, 0, 248, 249, 250, 251, - 252, 253, 254, 1521, 256, 257, 258, 259, 0, 260, - 261, 262, 263, 264, 265, 266, 0, 267, 1522, 0, - 270, 271, 272, 273, 274, 1523, 1524, 0, 1525, 0, - 278, 1526, 1527, 281, 1528, 283, 284, 285, 286, 287, - 288, 0, 0, 289, 1529, 291, 1530, 0, 293, 294, - 295, 296, 297, 298, 299, 300, 1531, 302, 303, 304, - 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, - 315, 316, 317, 318, 319, 320, 321, 1532, 1533, 1534, - 325, 326, 327, 0, 0, 329, 330, 1535, 332, 0, - 0, 334, 1536, 336, 337, 338, 0, 339, 340, 0, - 0, 341, 342, 343, 0, 0, 344, 345, 0, 1537, - 348, 1538, 0, 351, 352, 353, 354, 355, 356, 357, - 358, 359, 360, 361, 0, 0, 0, 0, 362, 363, - 0, 1539, 366, 367, 0, 369, 370, 371, 0, 372, - 373, 374, 375, 376, 377, 0, 378, 379, 380, 381, - 382, 1540, 384, 385, 386, 387, 0, 388, 389, 390, - 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, - 0, 401, 402, 1541, 404, 405, 406, 1542, 408, 409, - 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, - 420, 0, 1543, 421, 422, 423, 424, 425, 426, 1544, - 428, 429, 0, 1545, 431, 432, 1546, 434, 0, 435, - 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, - 446, 1547, 448, 0, 0, 0, 450, 451, 0, 452, - 1548, 454, 455, 456, 457, 458, 0, 459, 1549, 1550, - 0, 0, 462, 463, 0, 465, 0, 0, 467, 468, - 1551, 470, 471, 472, 473, 474, 1552, 0, 475, 476, - 477, 0, 478, 479, 480, 481, 0, 482, 483, 484, - 485, 486, 0, 1553, 489, 0, 490, 1554, 492, 493, - 494, 495, 496, 497, 498, 0, 0, 499, 0, 0, - 500, 501, 502, 503, 504, 505, 1501, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 517, 518, 519, - 520, 0, 0, 0, 0, 118, 119, 120, 121, 122, - 123, 124, 125, 0, 126, 127, 128, 0, 0, 0, - 1502, 0, 0, 0, 0, 1503, 130, 131, 0, 132, - 133, 134, 1504, 136, 137, 138, 0, 1505, 1506, 1507, - 1508, 0, 144, 145, 146, 147, 148, 149, 0, 0, - 150, 151, 152, 153, 1509, 1510, 156, 0, 157, 158, - 159, 160, 0, 0, 1511, 0, 1512, 164, 165, 166, - 167, 168, 1513, 170, 171, 172, 0, 173, 174, 175, - 176, 177, 178, 0, 1514, 180, 181, 182, 183, 184, - 185, 186, 187, 188, 189, 1515, 191, 192, 1516, 194, - 0, 195, 0, 196, 197, 198, 199, 200, 201, 0, - 0, 202, 203, 204, 205, 0, 0, 206, 207, 1073, - 209, 210, 0, 211, 212, 213, 0, 1859, 215, 216, - 0, 217, 218, 219, 220, 0, 222, 223, 224, 225, - 226, 227, 0, 0, 229, 0, 230, 231, 1517, 233, - 0, 234, 0, 235, 1518, 0, 1519, 238, 239, 0, - 1520, 242, 0, 243, 0, 0, 0, 246, 247, 0, - 248, 249, 250, 251, 252, 253, 254, 1521, 256, 257, - 258, 259, 0, 260, 261, 262, 263, 264, 265, 266, - 0, 267, 1522, 0, 270, 271, 272, 273, 274, 1523, - 1524, 0, 1525, 0, 278, 1526, 1527, 281, 1528, 283, - 284, 285, 286, 287, 288, 0, 0, 289, 1529, 291, - 1530, 0, 293, 294, 295, 296, 297, 298, 299, 300, - 1531, 302, 303, 304, 305, 306, 307, 308, 309, 310, - 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, - 321, 1532, 1533, 1534, 325, 326, 327, 0, 0, 329, - 330, 1535, 332, 0, 0, 334, 1536, 336, 337, 338, - 0, 339, 340, 0, 0, 341, 342, 343, 0, 0, - 344, 345, 0, 1537, 348, 1538, 0, 351, 352, 353, - 354, 355, 356, 357, 358, 359, 360, 361, 0, 0, - 0, 0, 362, 363, 0, 1539, 366, 367, 0, 369, - 370, 371, 0, 372, 373, 374, 375, 376, 377, 0, - 378, 379, 380, 381, 382, 1540, 384, 385, 386, 387, - 0, 388, 389, 390, 391, 392, 393, 394, 395, 396, - 397, 398, 399, 400, 0, 401, 402, 1541, 404, 405, - 406, 1542, 408, 409, 410, 411, 412, 413, 414, 415, - 416, 417, 418, 419, 420, 0, 1543, 421, 422, 423, - 424, 425, 426, 1544, 428, 429, 0, 1545, 431, 432, - 1546, 434, 0, 435, 436, 437, 438, 439, 440, 441, - 442, 443, 444, 445, 446, 1547, 448, 0, 0, 0, - 450, 451, 0, 452, 1548, 454, 455, 456, 457, 458, - 0, 459, 1549, 1550, 0, 0, 462, 463, 0, 465, - 0, 0, 467, 468, 1551, 470, 471, 472, 473, 474, - 1552, 0, 475, 476, 477, 0, 478, 479, 480, 481, - 0, 482, 483, 484, 485, 486, 0, 1553, 489, 0, - 490, 1554, 492, 493, 494, 495, 496, 497, 498, 0, - 0, 499, 0, 0, 500, 501, 502, 503, 504, 505, - 3230, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 517, 518, 519, 520, 0, 0, 0, 0, 118, - 119, 120, 121, 122, 123, 124, 125, 0, 126, 127, - 128, 0, 0, 0, 2971, 0, 0, 0, 0, 2972, - 130, 131, 0, 132, 133, 134, 2973, 136, 137, 138, - 0, 1505, 2974, 1507, 1508, 0, 144, 145, 146, 147, - 148, 149, 0, 0, 150, 151, 152, 153, 1509, 1510, - 156, 0, 157, 158, 159, 160, 0, 0, 2975, 0, - 2976, 164, 165, 166, 167, 168, 2977, 170, 171, 172, - 0, 173, 174, 175, 176, 177, 178, 0, 2978, 180, - 181, 182, 183, 184, 185, 186, 187, 188, 189, 1515, - 191, 192, 1516, 194, 0, 195, 0, 196, 197, 198, - 199, 200, 201, 0, 0, 202, 203, 204, 205, 0, - 0, 206, 207, 1073, 209, 210, 0, 211, 212, 213, - 0, 214, 215, 216, 0, 217, 218, 219, 220, 0, - 222, 223, 224, 225, 226, 227, 0, 0, 229, 0, - 230, 231, 1517, 233, 0, 234, 0, 235, 2979, 0, - 2980, 238, 239, 2981, 2982, 242, 0, 243, 0, 0, - 0, 246, 247, 0, 248, 249, 250, 251, 252, 253, - 254, 2983, 256, 257, 258, 259, 0, 260, 261, 262, - 263, 264, 265, 266, 0, 267, 2984, 0, 270, 271, - 272, 273, 274, 1523, 1524, 0, 1525, 0, 278, 2985, - 2986, 281, 2987, 283, 284, 285, 286, 287, 288, 0, - 0, 289, 2988, 291, 2989, 0, 293, 294, 295, 296, - 297, 298, 299, 300, 3231, 302, 303, 304, 305, 306, - 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, - 317, 318, 319, 320, 321, 1532, 2991, 1534, 325, 326, - 327, 0, 0, 329, 330, 2993, 332, 0, 0, 334, - 1536, 336, 337, 338, 0, 339, 340, 0, 0, 341, - 342, 343, 0, 0, 344, 345, 0, 2995, 348, 2996, - 0, 351, 352, 353, 354, 355, 356, 357, 358, 359, - 360, 361, 0, 0, 0, 0, 362, 363, 0, 2997, - 366, 367, 0, 369, 370, 371, 0, 372, 373, 374, - 375, 376, 377, 0, 378, 379, 380, 381, 382, 1540, - 384, 385, 386, 387, 0, 388, 389, 390, 391, 392, - 393, 394, 395, 396, 397, 398, 399, 400, 0, 401, - 402, 2998, 404, 405, 406, 0, 408, 409, 410, 411, - 412, 413, 414, 415, 416, 417, 418, 419, 420, 0, - 2999, 421, 422, 423, 424, 425, 426, 0, 428, 429, - 0, 3001, 431, 432, 1546, 434, 0, 435, 436, 437, - 438, 439, 440, 441, 442, 443, 444, 445, 446, 3232, - 448, 0, 0, 0, 450, 451, 0, 452, 3003, 454, - 455, 456, 457, 458, 0, 459, 1549, 1550, 0, 0, - 462, 463, 0, 465, 0, 0, 467, 468, 3004, 470, - 471, 472, 473, 474, 0, 0, 475, 476, 477, 0, - 478, 479, 480, 481, 0, 482, 483, 484, 485, 486, - 0, 1553, 489, 0, 490, 3006, 492, 493, 494, 495, - 496, 497, 498, 0, 0, 499, 0, 0, 500, 501, - 502, 503, 504, 505, 528, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 517, 518, 519, 520, 0, - 0, 0, 0, 118, 119, 120, 121, 122, 123, 124, - 125, 0, 126, 127, 128, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 130, 131, 0, 132, 133, 134, - 0, 136, 137, 138, 139, 140, 0, 142, 143, 0, - 144, 145, 146, 147, 148, 149, 0, 0, 150, 151, - 152, 153, 154, 155, 156, 0, 157, 158, 159, 160, - 161, 0, 0, 0, 163, 164, 165, 166, 167, 168, - 0, 170, 171, 172, 0, 173, 174, 175, 176, 177, - 178, 0, 0, 180, 181, 182, 183, 184, 185, 186, - 187, 188, 189, 190, 191, 192, 193, 194, 0, 195, - 0, 196, 197, 198, 199, 200, 201, 0, 0, 202, - 203, 204, 205, 0, 0, 206, 207, 208, 209, 210, - 0, 211, 212, 213, 0, 214, 215, 216, 0, 217, - 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, - 228, 0, 229, 0, 230, 231, 232, 233, 0, 234, - 0, 235, 0, 0, 0, 238, 239, 529, 0, 242, - 0, 243, 0, 244, 245, 0, 247, 0, 248, 249, - 250, 251, 252, 253, 254, 0, 256, 257, 258, 259, - 0, 260, 261, 262, 263, 264, 265, 266, 0, 267, - 0, 269, 270, 271, 272, 273, 274, 275, 276, 0, - 277, 0, 278, 0, 0, 281, 0, 283, 284, 285, - 286, 287, 288, 0, 0, 289, 0, 291, 0, 0, - 293, 294, 295, 296, 297, 298, 299, 300, 530, 302, - 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, - 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, - 0, 324, 325, 326, 327, 328, 0, 329, 330, 0, - 332, 0, 333, 334, 335, 336, 337, 338, 0, 339, - 340, 0, 0, 341, 342, 343, 0, 0, 344, 345, - 346, 0, 348, 0, 350, 351, 352, 353, 354, 355, - 356, 0, 358, 359, 360, 361, 0, 0, 0, 0, - 362, 363, 364, 0, 366, 367, 368, 369, 370, 371, - 0, 372, 373, 374, 375, 376, 377, 0, 378, 379, - 380, 0, 382, 383, 384, 385, 386, 387, 0, 388, - 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, - 399, 400, 0, 401, 402, 0, 404, 405, 406, 407, - 0, 409, 410, 411, 412, 413, 414, 415, 416, 417, - 418, 419, 420, 0, 0, 421, 422, 423, 424, 425, - 426, 427, 428, 429, 0, 0, 431, 432, 433, 434, - 0, 435, 436, 437, 438, 439, 440, 441, 442, 443, - 444, 445, 446, 531, 448, 449, 0, 0, 450, 451, - 0, 452, 0, 454, 455, 456, 457, 458, 0, 459, - 460, 461, 0, 0, 462, 463, 464, 465, 466, 0, - 467, 468, 469, 470, 471, 472, 473, 474, 0, 0, - 475, 476, 477, 0, 478, 479, 480, 481, 0, 482, - 483, 484, 485, 486, 487, 488, 489, 0, 490, 0, - 492, 493, 494, 495, 496, 497, 498, 0, 0, 499, - 0, 0, 500, 501, 502, 503, 504, 505, 506, 507, - 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, - 518, 519, 520, 1796, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 118, 119, 120, 121, 122, 123, 124, 125, - 0, 126, 127, 128, 0, 0, 0, 1502, 0, 0, - 0, 0, 1503, 130, 131, 0, 132, 133, 134, 1504, - 136, 137, 138, 0, 1505, 1506, 1507, 1508, 0, 144, - 145, 146, 147, 148, 149, 0, 0, 150, 151, 152, - 153, 1509, 1510, 156, 0, 157, 158, 159, 160, 0, - 0, 1511, 0, 1512, 164, 165, 166, 167, 168, 1513, - 170, 171, 172, 0, 173, 174, 175, 176, 177, 178, - 0, 1514, 180, 181, 182, 183, 184, 185, 186, 187, - 188, 189, 1515, 191, 192, 1516, 194, 0, 195, 0, - 196, 197, 198, 199, 200, 201, 0, 0, 202, 203, - 204, 205, 0, 0, 206, 207, 1073, 209, 210, 0, - 211, 212, 213, 0, 214, 215, 216, 0, 217, 218, - 219, 220, 0, 222, 223, 224, 225, 226, 227, 0, - 0, 229, 0, 230, 231, 1517, 233, 0, 234, 0, - 235, 1518, 0, 1519, 238, 239, 0, 1520, 242, 0, - 243, 0, 0, 0, 246, 247, 0, 248, 249, 250, - 251, 252, 253, 254, 1521, 256, 257, 258, 259, 0, - 260, 261, 262, 263, 264, 265, 266, 0, 267, 1522, - 0, 270, 271, 272, 273, 274, 1523, 1524, 0, 1525, - 0, 278, 1526, 1527, 281, 1528, 283, 284, 285, 286, - 287, 288, 0, 0, 289, 1529, 291, 1530, 0, 293, - 294, 295, 296, 297, 298, 299, 300, 0, 302, 303, - 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, - 314, 315, 316, 317, 318, 319, 320, 321, 1532, 1533, - 1534, 325, 326, 327, 0, 0, 329, 330, 1535, 332, - 0, 0, 334, 1536, 336, 337, 338, 0, 339, 340, - 0, 0, 341, 342, 343, 0, 0, 344, 345, 0, - 1537, 348, 1538, 0, 351, 352, 353, 354, 355, 356, - 357, 358, 359, 360, 361, 0, 0, 0, 0, 362, - 363, 0, 1539, 366, 367, 0, 369, 370, 371, 0, - 372, 373, 374, 375, 376, 377, 0, 378, 379, 380, - 381, 382, 1540, 384, 385, 386, 387, 0, 388, 389, - 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, - 400, 0, 401, 402, 1541, 404, 405, 406, 0, 408, - 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, - 419, 420, 0, 1543, 421, 422, 423, 424, 425, 426, - 0, 428, 429, 0, 1545, 431, 432, 1546, 434, 0, - 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, - 445, 446, 0, 448, 0, 0, 0, 450, 451, 0, - 452, 1548, 454, 455, 456, 457, 458, 0, 459, 1549, - 1550, 0, 0, 462, 463, 0, 465, 0, 0, 467, - 468, 1551, 470, 471, 472, 473, 474, 0, 0, 475, - 476, 477, 0, 478, 479, 480, 481, 0, 482, 483, - 484, 485, 486, 0, 1553, 489, 0, 490, 1554, 492, - 493, 494, 495, 496, 497, 498, 0, 1, 499, 0, - 0, 500, 501, 502, 503, 504, 505, 2, 0, 3, - 4, 0, 0, 0, 0, 1, 0, 0, 517, 518, - 519, 520, 0, 0, 0, 2, 0, 6, 0, 0, - 0, 0, 0, 0, 0, 0, 7, 0, 0, 0, - 0, 0, 0, 0, 0, 6, 0, 0, 0, 0, - 8, 0, 0, 0, 7, 0, 0, 0, 0, 0, - 0, 10, 0, 0, 0, 0, 0, 0, 8, 0, - 0, 0, 0, 11, 0, 751, 0, 0, 0, 10, - 0, 0, 0, 0, 0, 0, 13, 0, 0, 0, - 0, 11, 0, 751, 0, 0, 0, 0, 0, 0, - 0, 14, 15, 0, 13, 0, 0, 0, 0, 0, - 0, 0, 752, 0, 0, 0, 0, 0, 18, 14, - 15, 0, 0, 0, 0, 0, 19, 0, 0, 0, - 752, 0, 0, 0, 0, 0, 18, 0, 0, 0, - 0, 0, 0, 22, 19, 0, 0, 23, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 22, 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, -1467, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, -1467, 0, 0, - 0, 0, 0, 0, 0, 25, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 25, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 26, 27, 28, 0, 0, 0, 0, 0, 29, 0, - 0, 30, 0, 0, 0, 0, 0, 0, 26, 27, - 28, 0, 0, 0, 0, 0, 29, 0, 0, 30, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 31, 0, 0, 0, 0, 0, 0, 0, - 0, 32, 0, 0, 0, 0, 0, 0, 0, 0, - 31, 0, 0, 0, 0, 0, 0, 33, 0, 32, - 0, 0, 0, 0, 34, 0, 0, 0, 35, 0, - 0, 0, 0, 0, 0, 33, 0, 0, 36, 0, - 0, 0, 34, 0, 0, 0, 35, 0, 0, 0, - 37, 0, 0, 0, 38, 0, 36, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 37, 0, - 0, 0, 38, 0, 39, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 40, 0, 0, - 0, 0, 39, 42, 0, 0, 0, 0, 43, 0, - 0, 0, 0, 753, 0, 40, 0, 0, 0, 0, - 0, 42, 0, 0, 0, 44, 43, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 44, 0, 0, 0, 0, 0, 45, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 754, 0, 0, 0, 45, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 46 -}; - -static const yytype_int16 yycheck[] = -{ - 7, 521, 0, 0, 0, 0, 46, 0, 903, 16, - 0, 0, 0, 841, 73, 888, 23, 0, 0, 815, - 930, 38, 746, 7, 16, 999, 914, 0, 1256, 980, - 935, 1175, 1442, 1045, 1458, 754, 1682, 20, 20, 23, - 1230, 20, 965, 865, 77, 1244, 1217, 1242, 1222, 990, - 1611, 23, 1719, 990, 2217, 7, 77, 2186, 2207, 2188, - 1654, 1320, 1219, 1298, 37, 990, 1827, 1494, 75, 76, - 1210, 23, 969, 990, 1093, 0, 1599, 1573, 2276, 980, - 1635, 1636, 2363, 2714, 0, 0, 2675, 17, 2025, 0, - 1247, 75, 76, 1140, 111, 0, 2675, 1345, 1145, 0, - 45, 2712, 0, 75, 76, 2272, 903, 0, 905, 0, - 907, 2206, 0, 0, 2152, 2737, 0, 2730, 753, 747, - 1008, 754, 0, 75, 76, 2026, 34, 1101, 101, 2343, - 2542, 0, 2324, 2325, 2326, 0, 2629, 0, 0, 0, - 2633, 0, 0, 75, 76, 810, 0, 1067, 1068, 1686, - 0, 816, 5, 1845, 5, 1654, 0, 5, 13, 14, - 0, 40, 13, 14, 1084, 1737, 988, 0, 1849, 1846, - 5, 0, 1739, 1963, 5, 1999, 2000, 4, 13, 14, - 63, 997, 9, 10, 2844, 2355, 2010, 5, 5, 5, - 2014, 9, 5, 5, 5, 991, 9, 2364, 5, 5, - 1151, 13, 14, 63, 5, 3059, 13, 14, 5, 5, - 3045, 5, 13, 14, 5, 13, 14, 5, 5, 5, - 9, 778, 2355, 2351, 45, 82, 2349, 3062, 74, 37, - 4, 173, 139, 23, 42, 9, 93, 3, 4, 5, - 122, 55, 11, 9, 172, 45, 122, 16, 9, 124, - 100, 2418, 2419, 1265, 2421, 11, 191, 883, 63, 82, - 16, 980, 1274, 4, 860, 107, 172, 100, 9, 1157, - 93, 30, 119, 883, 1184, 90, 5, 46, 1100, 38, - 1231, 30, 104, 1234, 1235, 75, 76, 807, 3, 38, - 122, 11, 30, 101, 2945, 15, 16, 80, 178, 172, - 38, 1071, 1991, 1992, 1993, 2488, 63, 245, 2899, 3235, - 288, 80, 3015, 1457, 129, 291, 290, 1087, 122, 34, - 35, 296, 291, 169, 173, 64, 46, 992, 296, 3367, - 227, 213, 276, 137, 854, 74, 2591, 213, 2593, 1004, - 107, 2470, 245, 119, 106, 181, 382, 107, 983, 805, - 1494, 117, 117, 391, 1544, 53, 193, 30, 172, 181, - 80, 241, 117, 193, 166, 173, 368, 30, 1046, 11, - 3, 3430, 5, 15, 16, 120, 273, 1205, 1206, 132, - 1639, 13, 14, 40, 132, 2645, 41, 1209, 11, 164, - 40, 162, 15, 16, 108, 418, 2880, 120, 2882, 433, - 2592, 209, 3473, 409, 46, 250, 1933, 82, 480, 507, - 147, 3000, 359, 148, 2175, 1577, 11, 225, 93, 290, - 518, 1331, 3460, 3054, 1586, 3463, 3261, 235, 313, 1302, - 275, 164, 504, 456, 3065, 373, 191, 1964, 80, 3164, - 290, 3166, 389, 11, 341, 3056, 2644, 15, 16, 483, - 195, 273, 245, 219, 2617, 1360, 171, 290, 173, 132, - 309, 269, 3521, 189, 190, 200, 472, 238, 273, 132, - 373, 126, 195, 1151, 2641, 241, 2643, 360, 192, 177, - 518, 218, 26, 329, 369, 80, 522, 3558, 32, 251, - 794, 2751, 2530, 308, 26, 392, 194, 272, 231, 261, - 360, 199, 241, 431, 280, 108, 273, 315, 812, 485, - 454, 361, 3366, 451, 322, 280, 518, 1776, 3556, 176, - 275, 358, 324, 3397, 328, 355, 176, 275, 361, 2784, - 3233, 1550, 285, 259, 260, 167, 13, 285, 2099, 237, - 518, 3192, 19, 423, 518, 425, 395, 522, 451, 518, - 75, 280, 1230, 30, 522, 360, 364, 454, 431, 296, - 3211, 3286, 1018, 469, 2158, 108, 539, 44, 45, 476, - 3496, 451, 454, 2743, 431, 383, 518, 419, 454, 507, - 518, 1207, 457, 518, 389, 1181, 593, 3178, 1108, 1509, - 1510, 2018, 520, 137, 2761, 416, 1831, 1207, 2726, 1770, - 2723, 593, 448, 360, 3088, 137, 428, 3461, 431, 424, - 2743, 1168, 459, 373, 1534, 518, 416, 2800, 1434, 1435, - 1344, 457, 454, 184, 1440, 1349, 1448, 3462, 513, 2152, - 480, 1355, 109, 2570, 1462, 2190, 467, 3250, 2428, 522, - 399, 520, 1320, 1362, 452, 1893, 3235, 480, 3522, 3309, - 399, 2223, 378, 379, 518, 1483, 3235, 2224, 451, 2158, - 2484, 399, 522, 518, 2356, 518, 1925, 518, 1867, 519, - 518, 521, 1684, 2210, 1594, 1595, 527, 521, 1937, 527, - 1908, 521, 522, 518, 2361, 2366, 519, 518, 521, 518, - 3183, 482, 521, 2216, 482, 3188, 394, 524, 525, 516, - 518, 518, 518, 520, 518, 518, 518, 518, 1967, 2923, - 447, 518, 518, 504, 754, 1974, 504, 518, 2916, 3131, - 518, 518, 518, 1351, 518, 518, 1361, 518, 517, 1362, - 518, 518, 518, 516, 3365, 509, 510, 520, 279, 480, - 1628, 1629, 1630, 509, 510, 514, 1516, 754, 509, 510, - 294, 3373, 0, 468, 1576, 1577, 2015, 457, 514, 3372, - 2019, 3042, 294, 504, 1586, 805, 1536, 149, 509, 510, - 753, 753, 83, 406, 407, 754, 119, 33, 1600, 340, - 71, 72, 2471, 2472, 2473, 2474, 507, 794, 2023, 2048, - 1455, 511, 512, 513, 514, 812, 266, 5, 805, 520, - 1570, 227, 2897, 59, 8, 812, 419, 11, 369, 1631, - 794, 15, 16, 357, 457, 19, 20, 21, 518, 201, - 82, 805, 162, 513, 857, 357, 482, 359, 812, 888, - 520, 93, 1976, 805, 841, 842, 857, 148, 2775, 3325, - 3471, 3327, 794, 860, 3036, 389, 3457, 273, 504, 1800, - 517, 321, 521, 805, 203, 396, 523, 389, 865, 1810, - 812, 878, 1813, 1875, 207, 2903, 1544, 509, 510, 511, - 512, 513, 514, 805, 2018, 518, 3043, 875, 875, 875, - 875, 423, 875, 425, 863, 875, 875, 875, 511, 512, - 513, 514, 875, 875, 2488, 522, 2950, 997, 238, 245, - 1795, 245, 875, 3514, 2958, 912, 913, 3496, 2809, 916, - 917, 2812, 3562, 2814, 11, 3401, 460, 3496, 468, 516, - 4, 866, 2859, 520, 132, 9, 523, 1651, 2176, 2690, - 273, 2692, 275, 3423, 3424, 843, 844, 245, 846, 1986, - 848, 509, 510, 511, 512, 513, 514, 287, 1853, 46, - 875, 3582, 160, 3603, 214, 1828, 1829, 1830, 1909, 875, - 875, 1639, 969, 517, 875, 423, 392, 425, 1891, 523, - 875, 1768, 1895, 980, 875, 1898, 3257, 875, 1018, 275, - 987, 988, 875, 80, 875, 3475, 993, 875, 875, 996, - 997, 875, 999, 1000, 1001, 1002, 3194, 875, 1795, 74, - 983, 983, 2557, 1900, 794, 935, 875, 2530, 1909, 1016, - 875, 1018, 875, 875, 875, 805, 875, 875, 1815, 5, - 1027, 875, 812, 1820, 373, 3174, 245, 373, 454, 373, - 519, 341, 1016, 522, 1018, 384, 275, 1044, 1045, 1046, - 2450, 280, 117, 1027, 1016, 2469, 1018, 482, 82, 516, - 518, 513, 2192, 520, 2194, 1027, 259, 260, 520, 1066, - 1447, 1101, 1449, 1450, 1016, 373, 1018, 275, 162, 504, - 419, 4, 280, 167, 108, 1027, 9, 285, 1085, 556, - 263, 264, 1806, 518, 1016, 174, 1018, 1811, 292, 1096, - 1097, 1098, 2327, 1100, 1101, 1027, 1103, 1617, 1776, 518, - 339, 2300, 2246, 2599, 1204, 451, 8, 451, 516, 2368, - 2871, 1103, 520, 15, 16, 162, 30, 19, 20, 21, - 167, 470, 1938, 1939, 1940, 1941, 1942, 1943, 108, 1136, - 1946, 1947, 1948, 1949, 1950, 1951, 1952, 1953, 1954, 1955, - 174, 4, 3340, 451, 238, 3082, 9, 1154, 1155, 355, - 1972, 2308, 2675, 345, 373, 1188, 1189, 246, 1191, 482, - 380, 174, 516, 59, 1181, 380, 520, 1188, 1189, 203, - 1191, 85, 518, 203, 518, 378, 379, 436, 1916, 345, - 94, 504, 1920, 1190, 419, 1923, 519, 1194, 1195, 522, - 1909, 238, 384, 287, 516, 518, 518, 1204, 1205, 1206, - 275, 2375, 1209, 470, 118, 280, 2800, 2381, 2182, 6, - 518, 380, 246, 10, 132, 480, 172, 482, 384, 843, - 844, 18, 846, 1230, 848, 252, 1016, 419, 1018, 1246, - 438, 519, 451, 246, 522, 32, 377, 1027, 2060, 36, - 287, 449, 160, 1023, 516, 2504, 518, 1925, 520, 1029, - 37, 1028, 518, 419, 329, 1032, 345, 132, 1265, 1937, - 518, 828, 829, 830, 167, 519, 833, 1274, 522, 511, - 519, 748, 347, 522, 518, 2836, 172, 191, 470, 519, - 178, 519, 522, 519, 522, 160, 522, 13, 14, 1967, - 204, 1298, 13, 14, 519, 384, 1974, 522, 423, 518, - 425, 505, 506, 507, 470, 509, 510, 511, 512, 513, - 514, 172, 519, 1320, 2187, 522, 2138, 2133, 2134, 519, - 518, 1319, 522, 1319, 1319, 519, 1319, 518, 522, 1336, - 419, 518, 345, 519, 1434, 1435, 522, 2015, 1345, 373, - 1440, 2019, 2486, 241, 1336, 519, 2490, 2025, 522, 519, - 384, 2778, 522, 13, 14, 1362, 2279, 275, 2281, 315, - 316, 317, 280, 519, 523, 519, 522, 285, 522, 518, - 2048, 384, 1379, 448, 13, 14, 3574, 1384, 1361, 1361, - 2903, 470, 457, 1362, 518, 419, 173, 1379, 519, 866, - 292, 522, 519, 13, 14, 522, 3559, 3526, 3561, 519, - 519, 519, 522, 522, 522, 280, 419, 423, 442, 425, - 285, 26, 3541, 13, 14, 519, 2675, 32, 522, 315, - 316, 317, 209, 2251, 1014, 37, 382, 1434, 1435, 1019, - 1020, 1021, 518, 1440, 519, 1442, 470, 522, 225, 3602, - 1447, 1448, 1449, 1450, 2354, 2282, 1036, 2284, 235, 519, - 1040, 519, 522, 518, 522, 1462, 1463, 470, 1442, 2658, - 25, 2689, 2657, 419, 1471, 519, 1473, 3596, 522, 1476, - 519, 2642, 3601, 522, 1481, 373, 1483, 1484, 519, 1486, - 518, 522, 2656, 1490, 2658, 504, 382, 1471, 224, 1473, - 1442, 405, 1476, 518, 408, 519, 452, 1481, 522, 1471, - 1484, 1473, 1486, 501, 1476, 519, 1490, 463, 522, 1481, - 519, 2706, 1484, 522, 1486, 520, 2535, 2536, 1490, 1471, - 438, 1473, 137, 419, 1476, 423, 2641, 425, 2643, 1481, - 519, 449, 1484, 522, 1486, 13, 14, 1544, 1490, 1471, - 40, 1473, 519, 519, 1476, 522, 522, 290, 519, 1481, - 115, 522, 1484, 451, 1486, 501, 452, 3318, 1490, 3320, - 60, 173, 518, 438, 880, 171, 882, 463, 2542, 1576, - 1577, 2512, 2513, 2514, 449, 2512, 1573, 364, 1585, 1586, - 1680, 2403, 522, 1573, 1573, 1573, 1593, 2512, 2513, 5, - 1573, 1573, 518, 1600, 2511, 519, 383, 209, 13, 14, - 1573, 13, 14, 505, 506, 507, 106, 509, 510, 511, - 512, 513, 514, 225, 13, 14, 172, 178, 519, 1626, - 1627, 295, 518, 235, 1631, 1725, 519, 1634, 13, 14, - 368, 369, 1639, 1640, 1641, 1642, 1643, 1644, 1645, 1646, - 1647, 1648, 203, 26, 518, 1652, 1653, 1654, 59, 32, - 1657, 420, 1442, 501, 1661, 224, 1648, 1664, 1665, 1666, - 1667, 1668, 1669, 1670, 1671, 1672, 13, 14, 1675, 152, - 1654, 353, 2396, 13, 14, 1682, 152, 1684, 152, 294, - 241, 1471, 3328, 1473, 152, 2404, 1476, 13, 14, 1722, - 2368, 1481, 13, 14, 1484, 1702, 1486, 1174, 13, 14, - 1490, 1722, 202, 13, 14, 13, 14, 2966, 13, 14, - 126, 127, 3235, 13, 14, 13, 14, 152, 1725, 419, - 2608, 1700, 13, 14, 40, 147, 13, 14, 519, 1736, - 1737, 13, 14, 518, 295, 13, 14, 275, 353, 40, - 162, 470, 357, 368, 369, 167, 2917, 368, 369, 368, - 369, 251, 364, 89, 137, 152, 172, 484, 2574, 2575, - 152, 261, 26, 462, 463, 2964, 2386, 2387, 32, 1776, - 520, 383, 152, 273, 389, 378, 379, 152, 1785, 290, - 1787, 3536, 3537, 3568, 3569, 1154, 1155, 2258, 2259, 355, - 431, 519, 421, 1785, 518, 1787, 218, 220, 518, 518, - 518, 225, 26, 2631, 300, 305, 518, 225, 32, 518, - 3000, 225, 3040, 2718, 40, 297, 238, 236, 5, 5, - 1827, 518, 518, 2696, 1831, 518, 2504, 1834, 1835, 518, - 2740, 2754, 325, 518, 5, 5, 5, 518, 1938, 1939, - 1940, 1941, 1942, 1943, 5, 460, 1946, 1947, 1948, 1949, - 1950, 1951, 1952, 1953, 1954, 1955, 518, 3524, 9, 359, - 2872, 3528, 423, 518, 425, 287, 3125, 3277, 1875, 518, - 481, 302, 522, 137, 296, 1352, 26, 1354, 522, 104, - 40, 519, 32, 220, 384, 389, 1893, 448, 167, 287, - 451, 167, 2570, 1900, 1901, 285, 59, 40, 1871, 315, - 316, 317, 1909, 403, 26, 236, 431, 431, 518, 518, - 32, 294, 93, 137, 522, 59, 3583, 60, 1925, 59, - 266, 431, 1929, 1930, 431, 1932, 108, 523, 222, 431, - 1937, 1938, 1939, 1940, 1941, 1942, 1943, 431, 480, 1946, - 1947, 1948, 1949, 1950, 1951, 1952, 1953, 1954, 1955, 152, - 380, 100, 275, 199, 1961, 1962, 2772, 275, 1965, 518, - 1967, 275, 40, 106, 275, 1972, 382, 1974, 275, 518, - 353, 172, 152, 3496, 357, 520, 3235, 393, 13, 519, - 519, 172, 519, 519, 519, 477, 519, 137, 522, 1996, - 519, 518, 225, 519, 2001, 225, 2003, 2675, 282, 415, - 2007, 282, 518, 419, 2955, 518, 389, 522, 2015, 467, - 518, 520, 2019, 518, 2021, 137, 2023, 2001, 2025, 519, - 3430, 518, 520, 2007, 39, 447, 476, 518, 518, 2001, - 294, 518, 9, 2133, 2134, 2007, 452, 11, 429, 518, - 429, 2048, 355, 523, 2967, 2968, 517, 463, 429, 2001, - 522, 3246, 522, 2060, 2061, 2007, 518, 3481, 280, 202, - 431, 528, 3472, 181, 480, 147, 163, 172, 522, 2001, - 294, 519, 218, 37, 266, 2007, 522, 460, 42, 457, - 162, 2805, 227, 117, 291, 167, 392, 181, 504, 353, - 313, 2098, 313, 357, 522, 2102, 522, 2775, 2138, 220, - 2107, 2108, 518, 227, 227, 334, 519, 275, 251, 518, - 288, 3521, 296, 470, 518, 152, 3, 518, 261, 152, - 152, 152, 2938, 3097, 980, 389, 2133, 2134, 480, 353, - 273, 2138, 518, 357, 3362, 152, 218, 101, 172, 40, - 522, 275, 290, 522, 294, 3, 40, 2154, 290, 2249, - 2157, 2158, 2159, 59, 172, 11, 238, 3301, 40, 167, - 519, 519, 305, 519, 519, 389, 167, 518, 2175, 2176, - 518, 181, 294, 518, 2158, 2182, 3, 39, 2185, 3, - 431, 2859, 516, 516, 431, 517, 431, 431, 353, 519, - 519, 519, 519, 528, 148, 2202, 460, 522, 520, 519, - 519, 2185, 501, 353, 501, 287, 501, 357, 2215, 173, - 519, 2001, 2936, 2185, 296, 519, 359, 2007, 2202, 172, - 431, 155, 250, 788, 520, 2232, 2233, 519, 518, 518, - 2202, 353, 518, 2185, 477, 357, 460, 3496, 518, 389, - 40, 384, 2249, 518, 2251, 209, 59, 507, 522, 503, - 2202, 291, 291, 522, 0, 820, 454, 2264, 178, 244, - 403, 225, 59, 59, 1120, 3081, 266, 389, 275, 469, - 304, 235, 431, 152, 203, 2282, 2283, 2284, 518, 152, - 845, 315, 316, 317, 152, 282, 282, 519, 2966, 40, - 2282, 2283, 2284, 431, 1771, 1151, 431, 355, 431, 431, - 3499, 518, 3212, 518, 1781, 269, 1783, 519, 522, 1786, - 460, 290, 288, 480, 2321, 1792, 40, 1794, 152, 2359, - 2327, 241, 3000, 527, 280, 519, 290, 172, 893, 518, - 1807, 519, 59, 518, 186, 1812, 519, 167, 460, 1816, - 1817, 1818, 1819, 519, 1821, 1822, 80, 519, 382, 143, - 2348, 315, 2348, 2348, 100, 2348, 2363, 519, 322, 3078, - 516, 2368, 519, 199, 522, 447, 519, 522, 74, 172, - 301, 2363, 519, 361, 80, 1231, 291, 518, 1234, 1235, - 152, 2388, 518, 181, 523, 419, 176, 93, 442, 519, - 2910, 522, 518, 522, 314, 2185, 2403, 2404, 40, 519, - 364, 147, 519, 518, 3082, 2412, 519, 519, 519, 518, - 520, 117, 2202, 119, 518, 980, 162, 519, 452, 383, - 2412, 167, 522, 518, 86, 990, 172, 40, 40, 463, - 457, 522, 172, 518, 516, 181, 519, 519, 520, 519, - 186, 0, 3330, 2450, 199, 519, 480, 3125, 147, 479, - 517, 517, 522, 373, 519, 519, 519, 519, 463, 290, - 380, 20, 507, 162, 23, 3287, 2450, 3289, 167, 59, - 504, 3299, 218, 519, 2574, 2575, 519, 519, 37, 205, - 117, 2488, 480, 519, 518, 40, 227, 46, 452, 518, - 88, 192, 238, 457, 280, 280, 520, 2504, 2450, 2516, - 520, 207, 2542, 423, 520, 425, 3302, 520, 3304, 520, - 431, 1367, 1368, 3487, 2521, 431, 75, 76, 77, 218, - 2527, 2528, 3432, 517, 40, 520, 2585, 520, 520, 520, - 520, 451, 507, 520, 520, 2542, 520, 520, 520, 238, - 2580, 287, 101, 275, 290, 1110, 3441, 520, 520, 3422, - 296, 2558, 520, 520, 2561, 1120, 2563, 3235, 520, 520, - 520, 520, 520, 2570, 2571, 520, 517, 2574, 2575, 275, - 520, 520, 2579, 2580, 280, 520, 520, 1142, 520, 2586, - 520, 519, 519, 519, 107, 518, 1151, 3415, 287, 480, - 336, 2631, 518, 419, 2601, 290, 518, 296, 9, 518, - 354, 518, 2599, 336, 2611, 59, 519, 519, 522, 2599, - 2599, 2599, 522, 7, 8, 361, 2599, 2599, 199, 13, - 517, 519, 40, 329, 2631, 19, 2599, 522, 192, 23, - 522, 25, 2605, 462, 91, 29, 30, 31, 519, 347, - 34, 347, 60, 37, 38, 40, 518, 41, 152, 520, - 44, 45, 519, 124, 152, 40, 519, 369, 369, 40, - 2450, 40, 519, 518, 518, 2672, 457, 518, 2675, 2676, - 310, 2678, 2772, 419, 522, 518, 280, 249, 191, 457, - 2672, 75, 76, 2690, 2676, 2692, 2678, 74, 106, 442, - 37, 293, 74, 518, 80, 42, 9, 2797, 519, 519, - 518, 447, 371, 519, 59, 40, 517, 101, 517, 2749, - 93, 457, 133, 178, 108, 109, 110, 111, 112, 2717, - 2197, 2717, 2717, 507, 2717, 60, 273, 290, 442, 40, - 518, 477, 293, 479, 480, 1591, 293, 178, 203, 518, - 2713, 462, 448, 519, 519, 3469, 519, 1603, 447, 1605, - 205, 457, 290, 290, 101, 519, 389, 2797, 176, 122, - 454, 368, 203, 25, 148, 2772, 36, 368, 2775, 2742, - 516, 106, 107, 519, 520, 521, 241, 1633, 298, 875, - 2672, 1793, 117, 2277, 202, 2792, 2793, 2659, 3332, 2609, - 2797, 3472, 3426, 2800, 3573, 1900, 2960, 2391, 8, 852, - 241, 11, 3447, 3551, 3205, 15, 16, 3500, 151, 19, - 20, 21, 3509, 1378, 3544, 1217, 3263, 516, 3496, 2270, - 2827, 520, 2283, 3498, 3507, 2651, 173, 2731, 2267, 172, - 295, 3495, 1344, 251, 181, 2678, 2387, 2386, 2938, 2347, - 2847, 176, 1317, 261, 3078, 2249, 2853, 2854, 2412, 314, - 1174, 2858, 2859, 2893, 295, 273, 2863, 2215, 1197, 2866, - 2867, 1015, 209, 1015, 2871, 2872, 1761, 202, 2875, 2708, - 2469, 2232, 2879, 24, 3394, 3481, 1725, 3403, 225, 2886, - 1736, 1737, 3291, 1760, 23, 2202, 8, 305, 235, 11, - 2800, 2013, 3120, 15, 16, 2879, 1198, 19, 20, 21, - 992, 2378, 2450, 2449, 2496, 3226, 2966, 2879, 373, 990, - 1909, 2028, 1200, 990, 990, 380, 251, 990, 990, 990, - 3407, 990, 269, 2930, 1909, 1909, 261, 2879, 3406, 990, - 81, 2938, 373, 990, 2109, 2528, 2216, 2158, 273, 2062, - 275, 359, 2155, 290, 1800, 1463, 97, 2879, 2848, 2886, - 2957, 2111, 2554, 2599, 1810, 2850, 3392, 1813, 423, 2966, - 425, 789, 1362, 2021, 1837, 893, 384, 1700, 315, 2610, - 305, 1701, 315, 316, 317, 322, -1, 442, 2320, -1, - 539, 3081, 423, 448, 425, 403, 451, 1254, -1, 199, - -1, -1, -1, 3000, -1, 146, -1, -1, -1, -1, - -1, 442, -1, -1, -1, 156, -1, 448, -1, -1, - 451, -1, 222, -1, -1, -1, -1, 364, 169, -1, - -1, -1, -1, 174, 359, -1, 151, -1, -1, -1, - -1, -1, -1, -1, -1, 3042, 383, -1, -1, 382, - -1, -1, -1, -1, -1, -1, -1, 172, -1, 384, - 3042, -1, 203, 1909, -1, -1, -1, 3097, -1, -1, - -1, -1, -1, 3070, -1, -1, -1, -1, 403, -1, - 405, 3078, -1, 408, 3081, 3082, 419, 199, 8, -1, - -1, 11, 292, -1, 3057, 15, 16, -1, -1, 2879, - 3097, -1, -1, -1, -1, 246, -1, -1, -1, 250, - 222, -1, -1, -1, -1, 452, -1, -1, -1, 452, - 457, -1, -1, -1, -1, -1, 46, -1, 3125, -1, - 463, -1, -1, 53, 3131, -1, -1, 1692, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 480, -1, 1046, - -1, 3148, 3149, -1, -1, 3152, 540, 3154, -1, -1, - 80, 545, -1, -1, 548, -1, -1, 2634, -1, -1, - 2637, 504, 556, 314, -1, 172, -1, -1, -1, 320, - 292, -1, 3179, -1, -1, 518, 2032, -1, -1, -1, - -1, -1, -1, 518, 335, -1, -1, 2664, -1, -1, - 315, 316, 317, -1, 753, 754, 3203, 3297, -1, 1764, - 1765, -1, 2679, 2680, 2681, 2682, 2683, 2684, 2685, 2686, - 2687, 2688, -1, -1, -1, 145, -1, -1, -1, 370, - -1, -1, 373, -1, -1, -1, -1, -1, 3235, -1, - -1, -1, -1, 384, -1, 794, 387, -1, -1, -1, - -1, -1, -1, -1, -1, 1046, 805, 177, -1, -1, - 3257, -1, -1, 812, 405, -1, -1, 382, 1823, -1, - -1, -1, -1, -1, 194, 3257, -1, -1, 419, 199, - 3277, 1836, 1837, -1, 425, 426, -1, -1, -1, 3252, - 3287, -1, 3289, -1, 3291, 436, -1, -1, 3295, -1, - 3297, 442, 3299, 3277, 419, 505, 506, 507, 857, 509, - 510, 511, 512, 513, 514, -1, 3313, 237, 315, 316, - 317, 3318, -1, 3320, -1, -1, 875, -1, -1, 470, - -1, 3328, -1, 1230, -1, 3277, -1, 452, -1, -1, - -1, -1, -1, 2189, 3341, -1, -1, -1, 463, 3346, - -1, -1, -1, -1, 1909, -1, -1, -1, -1, 3341, - 1915, -1, 746, 747, 748, 480, 3329, -1, 3331, -1, - -1, 8, 292, -1, 11, -1, 2222, 2223, 15, 16, - -1, -1, 19, 20, 21, 382, 1046, -1, -1, 504, - -1, -1, -1, 505, 506, 507, 3393, 509, 510, 511, - 512, 513, 514, 518, 788, 789, 3403, -1, 3371, -1, - 794, -1, 796, -1, -1, -1, -1, -1, 3415, -1, - -1, 805, 419, 1320, 3387, 809, 810, -1, 812, -1, - -1, 815, 816, 3430, 983, -1, -1, -1, -1, 1230, - -1, -1, -1, -1, 828, 829, 830, -1, -1, 833, - -1, 3448, -1, -1, -1, 452, 3430, 841, 842, 843, - 844, -1, 846, -1, 848, -1, 463, 1016, -1, 1018, - 2937, -1, -1, -1, 394, 3472, 860, -1, 1027, -1, - -1, -1, 866, 480, -1, -1, -1, -1, 3430, -1, - 3487, -1, -1, -1, 878, -1, -1, 3277, 3472, 3496, - -1, 3498, -1, -1, -1, -1, -1, 504, 892, 893, - -1, 8, -1, 1062, 11, -1, 3498, -1, 15, 16, - -1, 518, -1, -1, 3521, 1074, -1, -1, -1, 1320, - 3472, -1, -1, -1, -1, -1, -1, -1, 3535, 3536, - 3537, -1, -1, 927, 928, -1, -1, 3521, -1, 46, - 3513, -1, 1101, -1, -1, 939, 53, -1, -1, 943, - 944, 945, 946, -1, 0, 3562, -1, -1, -1, -1, - 1230, -1, -1, -1, -1, 959, 3539, -1, -1, 3521, - -1, -1, 502, 80, -1, 222, -1, -1, -1, 509, - 510, 511, 512, 513, 514, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 3603, 991, 992, -1, - 994, -1, -1, 997, 1046, -1, -1, -1, -1, 1003, - 1004, -1, -1, -1, -1, -1, 1010, -1, -1, -1, - -1, -1, 1016, -1, 1018, -1, -1, -1, -1, 1188, - 1189, -1, 1191, 1027, -1, -1, -1, 1544, 145, -1, - 3430, -1, -1, 1037, -1, 292, -1, -1, -1, -1, - 1320, -1, 2508, 2509, 100, -1, 8, -1, -1, 11, - 1054, 55, -1, 15, 16, -1, -1, 19, 20, 21, - 177, -1, -1, -1, -1, -1, -1, -1, 8, -1, - -1, 11, 3472, -1, 36, 15, 16, 194, -1, 19, - 20, 21, 199, -1, -1, -1, -1, -1, -1, -1, - -1, 147, -1, -1, -1, -1, 36, 8, 102, -1, - 11, 1105, -1, -1, 15, 16, 162, -1, -1, -1, - -1, 167, -1, -1, 2289, -1, 172, -1, -1, 123, - 237, 3521, 1639, -1, -1, 181, -1, 3214, -1, -1, - 186, -1, -1, 1544, -1, 46, -1, 141, -1, -1, - -1, 145, 53, -1, -1, -1, -1, -1, -1, 3236, - 3237, -1, -1, -1, 1158, -1, -1, -1, -1, -1, - -1, -1, 218, -1, 168, -1, 2341, 171, -1, 80, - 1174, 1175, -1, 3260, -1, 292, -1, 1181, 1230, -1, - -1, -1, 238, 187, 2359, -1, -1, -1, -1, -1, - -1, -1, 1361, -1, -1, -1, -1, -1, -1, -1, - 1204, 1205, 1206, -1, -1, -1, -1, -1, -1, 2675, - -1, -1, 1216, 1217, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 1229, -1, -1, 1639, 2404, - -1, 287, 1046, -1, 290, -1, -1, -1, -1, 2414, - 296, 2416, 1246, -1, -1, 2420, 1250, 2422, 505, 506, - 507, 1255, 509, 510, 511, 512, 513, 514, -1, 1776, - 222, -1, -1, -1, 1544, -1, 177, -1, 1320, -1, - -1, -1, -1, -1, -1, -1, 280, 394, -1, -1, - 336, -1, 222, 194, 288, -1, -1, -1, 199, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, 1471, -1, 1473, 361, 310, 1476, -1, 1313, - -1, 1315, 1481, -1, -1, 1484, -1, 1486, -1, -1, - 1324, 1490, -1, -1, -1, 8, 237, -1, 11, -1, - 292, 1335, 15, 16, -1, 339, 19, 20, 21, -1, - 1344, -1, -1, -1, 2810, 1349, -1, 1351, 1352, -1, - 1354, 1355, 292, 36, -1, -1, -1, -1, -1, 1639, - -1, -1, -1, 419, -1, 1776, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 292, -1, -1, -1, 502, -1, -1, -1, -1, - -1, 447, 509, 510, 511, 512, 513, 514, -1, -1, - -1, 457, -1, -1, 1573, 3492, -1, -1, 1925, -1, - -1, -1, -1, -1, -1, -1, 1230, -1, -1, -1, - 1937, 477, -1, 479, 480, -1, -1, 1046, -1, -1, - 1434, 1435, -1, -1, -1, -1, 1440, -1, 1442, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 1967, 1455, -1, 1457, 1458, -1, -1, 1974, 1462, 1463, - 516, 1465, -1, 519, 520, 521, -1, 1471, -1, 1473, - -1, -1, 1476, 172, -1, -1, -1, 1481, -1, 1483, - 1484, -1, 1486, 394, -1, 1654, 1490, -1, 1492, 2955, - 1494, -1, 1544, -1, 2960, -1, 1776, -1, 2015, -1, - 2675, -1, 2019, -1, -1, -1, 1320, -1, 2025, -1, - -1, -1, -1, -1, 1925, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 1937, -1, -1, -1, - -1, 2048, -1, 2708, -1, -1, -1, -1, -1, 222, - -1, 3007, 3008, 505, 506, 507, -1, 509, 510, 511, - 512, 513, 514, 1722, -1, -1, 1967, -1, -1, -1, - -1, -1, -1, 1974, -1, 505, 506, 507, -1, 509, - 510, 511, 512, 513, 514, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 1639, -1, -1, - -1, 502, -1, -1, -1, 1599, -1, -1, 509, 510, - 511, 512, 513, 514, 2015, 304, -1, 1611, 2019, 292, - -1, 1230, -1, -1, 2025, -1, 315, 316, 317, -1, - -1, -1, -1, -1, -1, 37, -1, -1, -1, 41, - -1, -1, -1, -1, -1, -1, -1, 2048, -1, -1, - -1, -1, -1, -1, -1, 1925, -1, 1651, -1, -1, - 1654, -1, -1, -1, -1, -1, -1, 1937, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 8, -1, - -1, 11, -1, -1, -1, 15, 16, -1, 1682, 19, - 20, 21, -1, 382, -1, -1, -1, 1967, -1, 101, - 1859, -1, -1, 1697, 1974, 1699, 108, 1701, 110, -1, - 112, 1320, 1871, -1, -1, -1, 46, 1711, 2883, 1713, - -1, -1, -1, 53, -1, -1, -1, -1, -1, -1, - 419, 1725, -1, -1, 1776, -1, -1, -1, -1, -1, - 1544, -1, -1, -1, -1, 2015, -1, -1, -1, 2019, - 80, -1, -1, -1, -1, 2025, 1750, -1, 1752, -1, - -1, -1, -1, 452, -1, -1, 3222, 3223, -1, -1, - 1764, 1765, -1, -1, 463, -1, 1770, 1771, 2048, 3235, - -1, -1, -1, -1, -1, -1, -1, 1781, 1782, 1783, - 1784, 480, 1786, -1, -1, -1, -1, -1, 1792, -1, - 1794, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, 1806, 1807, -1, 504, -1, 1811, 1812, -1, - -1, -1, 1816, 1817, 1818, 1819, -1, 1821, 1822, 518, - -1, -1, 505, 506, 507, 1639, 509, 510, 511, 512, - 513, 514, 2001, -1, 1838, -1, -1, 177, 2007, -1, - -1, -1, 1846, -1, 1848, 1849, 1850, 1851, 1852, -1, - -1, 2368, -1, -1, 194, -1, -1, -1, -1, 199, - -1, -1, -1, -1, -1, 1869, -1, -1, -1, -1, - -1, -1, -1, 1925, -1, -1, 3051, -1, -1, -1, - -1, -1, -1, -1, 1888, 1937, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 237, -1, -1, - -1, -1, -1, 3078, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 1967, -1, -1, -1, -1, - -1, -1, 1974, -1, -1, 1544, -1, -1, -1, -1, - -1, -1, -1, -1, 1938, 1939, 1940, 1941, 1942, 1943, - -1, -1, 1946, 1947, 1948, 1949, 1950, 1951, 1952, 1953, - 1954, 1955, 292, -1, -1, -1, -1, 2368, -1, -1, - -1, -1, 1776, 2015, -1, -1, -1, 2019, -1, 2138, - -1, -1, 1976, 2025, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 1990, 2504, -1, 2158, - 3165, -1, -1, -1, -1, -1, 2048, 2001, -1, 8, - -1, -1, 11, 2007, -1, 2174, 15, 16, 37, 2013, - 19, 20, 21, 42, 2018, -1, 2185, -1, -1, -1, - 1639, -1, -1, 2027, 2028, -1, -1, 36, -1, -1, - 3496, -1, 997, 2202, -1, -1, -1, -1, -1, -1, - -1, -1, 0, -1, -1, 13, -1, -1, -1, -1, - -1, 19, -1, 2570, 394, 23, -1, -1, -1, -1, - 3235, -1, 30, -1, -1, -1, -1, -1, -1, -1, - -1, -1, 101, -1, -1, -1, 44, 45, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 2368, -1, - -1, -1, -1, 2504, -1, 2099, -1, -1, -1, -1, - 2104, -1, -1, -1, -1, 2109, -1, 75, 76, -1, - -1, 1925, -1, 8, -1, -1, 11, -1, -1, -1, - 15, 16, -1, 1937, 19, 20, 21, -1, 540, 2133, - 2134, -1, -1, 545, -1, -1, 548, -1, -1, -1, - -1, 109, 100, -1, 173, -1, -1, -1, 2152, -1, - -1, -1, -1, 1967, 2158, -1, -1, 1776, 2675, 2570, - 1974, -1, 502, -1, -1, 505, 506, 507, -1, 509, - 510, 511, 512, 513, 514, -1, -1, -1, -1, -1, - 209, 2185, -1, -1, -1, -1, -1, -1, 3363, 147, - 2359, -1, -1, 2197, -1, -1, 225, -1, 2202, -1, - -1, 2015, 2206, -1, 162, 2019, 235, -1, -1, 167, - -1, 2025, -1, 222, 172, -1, -1, -1, -1, -1, - -1, -1, -1, 181, 2504, -1, -1, -1, 186, -1, - 1195, -1, -1, -1, 2048, -1, -1, -1, -1, 1204, - 269, -1, 2246, -1, -1, 2249, -1, 2251, 2252, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 2775, -1, - 218, 290, -1, -1, 2675, -1, -1, -1, 2272, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 238, -1, -1, 292, -1, -1, 315, -1, -1, -1, - 2570, -1, -1, 322, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 1925, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 2368, -1, 1937, -1, - -1, 3496, -1, -1, -1, -1, -1, 222, -1, 287, - -1, -1, 290, -1, -1, 364, -1, -1, 296, 2343, - -1, -1, 2859, -1, -1, -1, 2350, -1, 1967, -1, - -1, -1, -1, -1, 383, 1974, -1, 2361, -1, -1, - 2364, 2365, 2366, 2367, 2775, -1, -1, -1, -1, -1, - -1, -1, -1, 2542, 2378, -1, 2380, -1, 336, 2383, - -1, -1, -1, -1, 796, -1, 2390, -1, -1, -1, - -1, -1, 2396, -1, -1, 2675, 2015, 292, -1, -1, - 2019, -1, -1, 361, -1, -1, 2025, -1, -1, -1, - -1, 2580, -1, -1, 2418, 2419, -1, 2421, -1, -1, - -1, -1, -1, 452, -1, -1, -1, -1, -1, 2048, - 2599, -1, -1, -1, -1, -1, 2605, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 2450, -1, 2859, 2966, - -1, -1, 2504, -1, -1, -1, -1, -1, -1, -1, - -1, 419, 2631, -1, 2468, -1, -1, -1, -1, 1434, - 1435, -1, 2476, 2477, 2478, 1440, -1, -1, -1, -1, - 892, -1, 2486, 3000, 2488, -1, 2490, -1, -1, 447, - -1, -1, 2496, -1, -1, 2775, 505, 506, 507, 457, - 509, 510, 511, 512, 513, 514, -1, -1, -1, -1, - -1, -1, 2516, -1, -1, 927, -1, -1, 2570, 477, - -1, 479, 480, -1, -1, -1, 2530, -1, -1, -1, - -1, 943, 944, 945, 946, -1, -1, 2541, -1, -1, - -1, 2545, -1, -1, 2713, -1, -1, -1, -1, -1, - -1, -1, -1, -1, 2368, 2966, -1, -1, 516, -1, - -1, 519, 520, 521, -1, 3082, -1, -1, -1, -1, - 2574, 2575, -1, 2742, -1, -1, -1, -1, -1, 2859, - 2749, -1, 994, -1, -1, -1, -1, -1, 556, 3000, - -1, -1, -1, -1, -1, -1, -1, -1, -1, 2603, - -1, -1, -1, -1, -1, 2609, -1, -1, 3125, -1, - 505, 506, 507, -1, 509, 510, 511, 512, 513, 514, - -1, 2625, -1, 2675, -1, 2629, -1, 2631, 2797, 2633, - 2634, -1, -1, 2637, -1, -1, -1, 2641, 2642, 2643, - -1, 2645, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 2664, -1, 2666, -1, -1, -1, -1, -1, -1, -1, - -1, 3082, -1, -1, -1, 2679, 2680, 2681, 2682, 2683, - 2684, 2685, 2686, 2687, 2688, -1, 2966, -1, -1, -1, - 2504, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 2712, -1, - 2879, -1, -1, -1, 3125, 2719, -1, -1, 3235, -1, - 3000, -1, -1, 2775, 2893, 8, -1, 2731, 11, -1, - -1, -1, 15, 16, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 2751, -1, 2368, - -1, -1, -1, -1, -1, -1, 2570, 2761, -1, -1, - 1725, -1, -1, 46, -1, -1, -1, -1, 2772, -1, - 53, -1, -1, -1, 2778, -1, -1, -1, -1, 747, - 748, 2785, 2786, 2787, 2788, -1, -1, -1, -1, -1, - -1, -1, -1, 2797, -1, -1, 2800, 80, -1, -1, - 2804, 2805, 3082, -1, 1216, -1, -1, 2859, -1, 2813, - -1, -1, -1, -1, -1, -1, -1, 1229, -1, -1, - -1, -1, -1, -1, 3235, -1, -1, -1, -1, -1, - -1, -1, 2836, -1, -1, -1, -1, 805, 1250, 2843, - 2844, -1, -1, -1, 2848, 3125, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 2675, 145, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 2877, -1, 2879, -1, -1, -1, -1, - -1, -1, 2886, -1, -1, 2504, -1, -1, 3057, 2893, - -1, -1, -1, 2897, 177, -1, -1, -1, 866, 2903, - -1, -1, -1, 1315, -1, -1, -1, -1, -1, -1, - -1, 194, 1324, 2917, 2966, -1, 199, -1, -1, 2923, - -1, -1, -1, -1, -1, -1, -1, -1, 3097, -1, - -1, -1, 2936, 2937, 2938, -1, -1, -1, -1, -1, - 2944, -1, -1, -1, -1, -1, -1, -1, 3000, -1, - -1, 2570, -1, -1, 237, 3235, -1, 2961, -1, -1, - -1, 2775, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 1938, 1939, 1940, 1941, 1942, 1943, 3496, - -1, 1946, 1947, 1948, 1949, 1950, 1951, 1952, 1953, 1954, - 1955, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, 292, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 3082, -1, -1, -1, -1, 3039, -1, -1, -1, 3043, - -1, -1, 1010, -1, -1, 2859, -1, -1, 1016, -1, - 1018, -1, 3056, 1465, -1, -1, 2675, -1, -1, 1027, - -1, -1, -1, -1, -1, -1, -1, -1, -1, 1037, - 3074, -1, -1, 3125, -1, -1, -1, 3081, -1, -1, - -1, -1, -1, 3252, -1, 3496, -1, -1, -1, 8, - -1, -1, 11, -1, -1, -1, 15, 16, 17, 18, - 19, 20, 21, 3107, 3273, -1, -1, -1, -1, 3113, - -1, 394, -1, -1, -1, -1, 3120, 36, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 46, -1, -1, - -1, -1, -1, 3137, 53, -1, -1, 1105, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, 2966, -1, -1, -1, 2775, 3161, -1, -1, - 3329, 80, 3331, 8, -1, -1, 11, -1, 2133, 2134, - 15, 16, 17, 18, 19, 20, 21, -1, -1, 3183, - -1, -1, -1, 3235, 3188, -1, 3000, -1, -1, -1, - -1, 36, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 46, 3371, -1, -1, -1, 1174, 1175, 53, -1, - 3214, 126, 127, -1, -1, -1, 3496, -1, 3387, 502, - -1, -1, -1, -1, -1, -1, 509, 510, 511, 512, - 513, 514, 3236, 3237, -1, 80, -1, -1, -1, -1, - 2859, -1, -1, -1, -1, -1, -1, -1, -1, 3253, - -1, 3255, -1, -1, -1, -1, 3260, 172, 177, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 3082, -1, - 3274, -1, -1, 3277, -1, 194, -1, -1, -1, -1, - 199, -1, -1, -1, 2249, -1, -1, 1699, -1, 1701, - -1, -1, -1, 3297, -1, 3299, -1, 3301, 3302, 1711, - 3304, -1, -1, 222, 223, 3309, -1, -1, -1, -1, - -1, 3125, -1, -1, -1, -1, -1, -1, 237, -1, - -1, -1, -1, -1, 3328, -1, -1, -1, 3332, -1, - -1, -1, 177, -1, -1, 3339, -1, -1, 1750, -1, - -1, -1, -1, -1, 3513, -1, -1, 2966, -1, 194, - -1, -1, -1, -1, 199, -1, 275, -1, -1, 278, - -1, -1, -1, -1, -1, 3369, -1, -1, -1, -1, - 3539, -1, -1, 292, -1, -1, 295, 222, 223, -1, - -1, 3000, -1, 1351, 1352, -1, 1354, -1, -1, -1, - -1, -1, 237, -1, -1, -1, -1, -1, -1, -1, - 315, 316, 317, 3407, -1, -1, -1, -1, -1, -1, - 8, 3415, -1, 11, -1, -1, -1, 15, 16, -1, - -1, 3235, -1, -1, -1, -1, 3430, -1, -1, -1, - 275, -1, -1, 278, -1, -1, 1848, 1849, 1850, 1851, - 1852, -1, -1, -1, 3496, -1, -1, 292, 46, -1, - 295, -1, -1, 3457, -1, 53, -1, -1, -1, -1, - -1, -1, -1, 3082, -1, 3469, 3470, 382, 3472, 3473, - -1, -1, -1, -1, -1, 394, -1, 3481, 393, -1, - -1, -1, 80, -1, -1, -1, -1, -1, 3492, 1457, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 415, -1, -1, 1471, 419, 1473, 3125, -1, 1476, -1, - 3514, -1, -1, 1481, -1, -1, 1484, 3521, 1486, -1, - -1, -1, 1490, -1, 1492, -1, 1494, -1, -1, -1, - 68, 69, -1, -1, -1, -1, -1, 452, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 145, 463, 394, - -1, -1, -1, -1, 3558, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 480, -1, -1, -1, 3573, - -1, 109, 110, -1, -1, 113, 114, 8, 1990, 177, - 11, -1, -1, 502, 15, 16, 505, 506, 507, 504, - 509, 510, 511, 512, 513, 514, 194, -1, -1, -1, - -1, 199, -1, 518, 523, -1, -1, -1, -1, 2574, - 2575, -1, -1, -1, -1, 46, 3235, -1, -1, -1, - -1, -1, 53, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, 841, 842, -1, -1, -1, 237, - -1, -1, -1, 1611, -1, -1, -1, -1, -1, 80, - -1, 189, 190, -1, -1, -1, -1, 502, -1, -1, - 505, 506, 507, -1, 509, 510, 511, 512, 513, 514, - -1, -1, -1, -1, -1, -1, -1, 522, -1, -1, - -1, -1, 3496, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, 292, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 912, -1, -1, -1, 916, - 917, -1, -1, -1, 145, 253, 254, 255, 256, 257, - 258, 259, 260, -1, -1, 263, 264, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 177, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, 969, 194, -1, -1, -1, -1, 199, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 987, -1, -1, -1, 1752, -1, 993, -1, -1, 996, - -1, -1, 999, 1000, 1001, 1002, 394, -1, -1, 337, - 338, -1, -1, 1771, -1, -1, 237, 2772, -1, -1, - -1, -1, -1, 1781, -1, 1783, -1, -1, 1786, -1, - -1, -1, -1, -1, 1792, -1, 1794, -1, -1, -1, - -1, -1, 2797, -1, -1, -1, -1, 1044, 1045, 1807, - 378, 379, -1, -1, 1812, -1, -1, -1, 1816, 1817, - 1818, 1819, -1, 1821, 1822, 3, -1, -1, -1, 1066, - 8, 292, -1, 11, -1, -1, -1, 15, 16, 17, - 18, 19, 20, 21, -1, -1, -1, 3496, 1085, -1, - -1, -1, 2847, -1, -1, -1, -1, -1, 36, 1096, - 1097, 1098, 40, 1100, 1101, -1, -1, -1, 46, -1, - -1, -1, -1, -1, 502, 53, -1, -1, -1, -1, - -1, 509, 510, 511, 512, 513, 514, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, 1136, - -1, -1, 80, -1, -1, -1, 474, 475, 2350, -1, - -1, -1, -1, -1, -1, -1, -1, 1154, 1155, -1, - -1, -1, -1, 2365, 2366, 2367, -1, -1, -1, -1, - 498, 499, -1, 394, -1, -1, -1, -1, 2380, -1, - -1, 2383, -1, 2938, -1, -1, -1, -1, 2390, -1, - 518, -1, 8, 1190, -1, 11, -1, 1194, 1195, 15, - 16, 17, 18, 19, 20, 21, -1, 8, 1205, 1206, - 11, -1, 98, -1, 15, 16, -1, -1, 1976, -1, - 36, -1, -1, -1, 40, -1, -1, -1, -1, -1, - 46, -1, -1, -1, -1, -1, -1, 53, -1, 177, - 126, 127, -1, 2001, -1, 46, -1, -1, -1, 2007, - -1, -1, 53, -1, -1, 2013, 194, -1, -1, -1, - 2018, 199, -1, -1, 80, -1, -1, -1, 1265, -1, - -1, -1, -1, -1, 2476, 2477, 2478, 1274, -1, 80, - -1, 502, -1, -1, 222, 223, 172, -1, 509, 510, - 511, 512, 513, 514, -1, -1, -1, -1, -1, 237, - -1, 1298, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 8, -1, -1, 11, -1, -1, 3081, 15, 16, 17, - 18, 19, 20, 21, -1, -1, -1, 275, -1, -1, - 278, 2099, -1, -1, 145, -1, -1, -1, 36, -1, - -1, 2109, -1, -1, 292, -1, -1, 295, 46, -1, - -1, 177, -1, -1, -1, 53, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 177, -1, 194, -1, - -1, -1, -1, 199, -1, -1, -1, 1384, -1, -1, - -1, -1, 80, 194, -1, -1, -1, -1, 199, -1, - -1, -1, -1, -1, -1, -1, 222, 223, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 237, -1, 2625, -1, -1, -1, 2185, -1, 315, - 316, 317, -1, -1, -1, -1, 237, -1, -1, 2197, - -1, -1, -1, -1, 2202, -1, -1, -1, -1, -1, - 1447, -1, 1449, 1450, -1, -1, 394, -1, -1, 275, - -1, -1, 278, -1, -1, 1462, 1463, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 292, -1, -1, 295, - -1, -1, -1, -1, -1, -1, 1483, -1, 2246, 177, - -1, 292, -1, -1, 2252, -1, 382, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 194, 393, -1, -1, - -1, 199, -1, -1, -1, -1, -1, 2719, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, 415, - -1, -1, -1, 419, 222, 223, -1, -1, -1, -1, - -1, -1, 3297, -1, -1, -1, -1, -1, -1, 237, - -1, -1, -1, 439, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, 502, -1, 452, 505, 506, 507, - -1, 509, 510, 511, 512, 513, 514, 463, 394, -1, - -1, -1, -1, 2785, 2786, 2787, 2788, 275, 1585, -1, - 278, -1, -1, 394, 480, -1, 1593, -1, -1, -1, - -1, -1, -1, -1, 292, -1, -1, 295, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 504, -1, - 2378, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 1627, -1, 518, -1, -1, -1, -1, 1634, -1, -1, - -1, -1, -1, 1640, 1641, 1642, 1643, 1644, 1645, 1646, - 1647, -1, -1, -1, -1, 1652, 1653, -1, -1, -1, - 1657, -1, -1, -1, 1661, -1, -1, 1664, 1665, 1666, - 1667, 1668, 1669, 1670, 1671, 1672, -1, -1, 1675, -1, - -1, -1, -1, -1, -1, 1682, 502, 1684, -1, 505, - 506, 507, -1, 509, 510, 511, 512, 513, 514, -1, - -1, 502, -1, 519, -1, 1702, 394, -1, 509, 510, - 511, 512, 513, 514, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 2486, -1, - -1, -1, 2490, -1, -1, -1, -1, -1, 2496, 1736, - 1737, -1, 2944, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 2541, -1, -1, -1, 2545, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, 502, -1, -1, 505, 506, 507, - -1, 509, 510, 511, 512, 513, 514, -1, -1, -1, - 1827, 519, -1, -1, 1831, -1, -1, 1834, 1835, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 2629, -1, -1, 8, 2633, 2634, 11, 1875, 2637, - -1, 15, 16, 17, 18, 19, 20, 21, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, 36, 1900, 1901, -1, 2664, -1, -1, -1, - -1, -1, 46, -1, -1, -1, -1, -1, -1, 53, - -1, 2679, 2680, 2681, 2682, 2683, 2684, 2685, 2686, 2687, - 2688, -1, 1929, 1930, -1, 1932, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 80, -1, -1, -1, - -1, -1, 26, -1, -1, 0, -1, -1, 32, -1, - -1, -1, -1, -1, 1961, 1962, 40, -1, 1965, 26, - -1, -1, -1, -1, -1, 32, -1, 22, -1, -1, - -1, -1, -1, 40, -1, -1, 60, 32, -1, 34, - 35, -1, -1, -1, -1, -1, -1, -1, -1, 1996, - -1, -1, 47, 60, -1, -1, 2003, 52, -1, -1, - -1, -1, -1, -1, -1, -1, 61, -1, -1, -1, - 2778, -1, -1, -1, 2021, -1, 2023, -1, -1, -1, - 75, -1, 106, -1, -1, -1, -1, -1, -1, 84, - -1, 86, -1, 177, -1, -1, 2804, -1, -1, 106, - -1, 3253, -1, 98, -1, 100, -1, -1, -1, -1, - 194, -1, -1, 137, 2061, 199, 111, -1, -1, -1, - -1, -1, 3274, -1, -1, -1, -1, -1, 2836, -1, - 137, 126, 127, 128, -1, -1, 2844, -1, 222, 223, - -1, -1, 137, -1, -1, -1, -1, -1, 143, -1, - -1, 2098, -1, 237, -1, 2102, 151, -1, 153, 154, - 2107, 2108, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 2879, -1, 168, -1, -1, -1, 172, 202, -1, - -1, -1, -1, -1, -1, -1, -1, 3339, -1, -1, - -1, 275, -1, -1, 278, 202, -1, -1, -1, -1, - -1, -1, -1, 198, -1, -1, -1, 2154, 292, -1, - 2157, 295, 2159, -1, -1, -1, -1, 3369, -1, 214, - -1, -1, -1, -1, -1, -1, -1, 251, 2175, 2937, - -1, -1, -1, -1, -1, -1, -1, 261, -1, -1, - -1, -1, -1, -1, 251, 240, -1, -1, -1, 273, - -1, -1, -1, -1, 261, -1, -1, -1, -1, -1, - -1, -1, -1, -1, 8, -1, 273, 11, 2215, -1, - 294, 15, 16, 17, 18, 19, 20, 21, -1, -1, - -1, 305, -1, -1, -1, 2232, 2233, 294, -1, -1, - -1, -1, 36, -1, -1, -1, -1, -1, 305, -1, - -1, -1, 46, -1, 2251, -1, -1, -1, -1, 53, - 394, -1, -1, -1, -1, -1, -1, 2264, -1, -1, - 315, 316, 317, -1, -1, -1, -1, -1, 323, 353, - -1, 326, -1, 357, -1, 359, 80, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 353, -1, -1, -1, - 357, -1, 359, -1, -1, -1, -1, 997, -1, -1, - 384, -1, 357, -1, -1, 389, -1, -1, -1, -1, - -1, 366, -1, -1, 2321, -1, -1, 384, -1, 403, - 2327, -1, 389, -1, -1, -1, -1, 382, -1, -1, - -1, -1, -1, -1, 389, -1, 403, -1, 393, -1, - -1, -1, -1, -1, -1, 3113, -1, -1, 403, -1, - -1, -1, 3120, -1, -1, -1, -1, -1, 502, -1, - 415, 505, 506, 507, 419, 509, 510, 511, 512, 513, - 514, -1, -1, 177, -1, 519, 460, -1, -1, -1, - -1, 2388, -1, -1, 439, -1, -1, -1, -1, -1, - 194, -1, -1, 460, -1, 199, -1, 452, -1, -1, - 455, -1, -1, 458, -1, -1, -1, -1, 463, -1, - -1, -1, -1, -1, -1, 3183, -1, -1, 222, 223, - 3188, 1121, -1, -1, -1, 480, -1, 8, -1, -1, - 11, -1, -1, 237, 15, 16, 17, 18, 19, 20, - 21, -1, -1, -1, -1, -1, 3214, -1, -1, 504, - -1, -1, -1, -1, -1, 36, -1, -1, -1, -1, - -1, -1, -1, 518, -1, 46, 521, -1, 3236, 3237, - 1170, 275, 53, -1, 278, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 292, -1, - -1, 295, 3260, -1, -1, -1, -1, -1, -1, 80, - -1, -1, -1, -1, 1204, -1, -1, -1, -1, -1, - -1, -1, -1, -1, 2521, -1, -1, -1, -1, -1, - 2527, 2528, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 3301, -1, 2542, -1, -1, -1, -1, - -1, 3309, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 2558, -1, -1, 2561, -1, 2563, -1, -1, 1259, - -1, -1, -1, -1, 2571, -1, -1, -1, -1, -1, - -1, -1, 2579, 2580, -1, -1, -1, -1, -1, 2586, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 394, -1, -1, -1, 2601, -1, 177, -1, -1, -1, - -1, 1301, -1, -1, 2611, -1, -1, -1, 1308, -1, - -1, -1, -1, 194, -1, -1, -1, -1, 199, -1, - -1, -1, -1, -1, 2631, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 222, 223, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 237, -1, 1358, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, 24, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, 1382, 2690, -1, 2692, -1, -1, -1, -1, - -1, -1, -1, -1, 275, -1, -1, 278, 502, -1, - -1, 505, 506, 507, -1, 509, 510, 511, 512, 513, - 514, 292, -1, -1, 295, 519, -1, -1, -1, -1, - -1, -1, -1, -1, 3492, -1, 81, -1, -1, -1, - 1430, -1, 1432, -1, 1434, 1435, -1, 1437, -1, -1, - 1440, -1, 97, 1443, -1, -1, 1446, -1, -1, -1, - -1, 1451, -1, -1, 1454, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 8, -1, -1, 11, -1, -1, -1, 15, 16, - 17, 18, 19, 20, 21, 2792, 2793, -1, -1, -1, - -1, 146, -1, -1, -1, -1, -1, 1497, -1, 36, - -1, 156, -1, -1, -1, -1, -1, -1, -1, 46, - -1, -1, -1, 394, 169, -1, 53, -1, -1, 174, - 2827, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 2847, -1, -1, 80, -1, -1, 2853, 2854, 203, -1, - -1, 2858, -1, -1, -1, -1, 2863, -1, -1, 2866, - 2867, -1, -1, -1, 2871, 2872, -1, -1, 2875, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, 2886, - -1, 1581, -1, 3, -1, 5, -1, -1, -1, -1, - -1, 246, -1, -1, -1, 250, -1, 1597, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 1607, 1608, 1609, - -1, -1, -1, -1, 1614, -1, -1, -1, 1618, -1, - -1, 502, -1, 2930, 505, 506, 507, -1, 509, 510, - 511, 512, 513, 514, -1, -1, -1, -1, 519, -1, - 177, -1, -1, -1, -1, -1, -1, -1, 68, 69, - 2957, -1, -1, -1, -1, -1, -1, 194, -1, -1, - -1, -1, 199, -1, -1, 320, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 68, 69, -1, -1, -1, - 335, 1681, -1, -1, -1, 222, 223, -1, -1, 109, - 110, -1, -1, 113, 114, -1, -1, -1, -1, -1, - 237, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 370, 109, 110, 373, 1719, - 113, 114, -1, -1, -1, -1, -1, -1, -1, 384, - -1, -1, 387, -1, -1, 1735, -1, -1, 275, -1, - 1740, 278, -1, -1, -1, -1, -1, -1, -1, -1, - 405, -1, -1, -1, -1, 292, -1, 1757, 295, -1, - -1, -1, -1, 3070, 419, -1, -1, -1, -1, 189, - 190, 426, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 436, -1, -1, -1, -1, -1, 442, -1, -1, - 3097, -1, -1, -1, -1, -1, 189, 190, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 470, -1, -1, -1, -1, - -1, -1, -1, -1, 3131, -1, -1, -1, -1, -1, - -1, -1, -1, 253, 254, 255, 256, 257, 258, 259, - 260, 3148, 3149, 263, 264, 3152, -1, 3154, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 394, -1, -1, - 253, 254, 255, 256, 257, 258, 259, 260, -1, -1, - 263, 264, 3179, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 3203, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 337, 338, -1, - -1, -1, -1, -1, -1, -1, -1, 1927, -1, -1, - -1, -1, -1, -1, -1, 1935, 1936, -1, 1938, 1939, - 1940, 1941, 1942, 1943, 337, 338, 1946, 1947, 1948, 1949, - 1950, 1951, 1952, 1953, 1954, 1955, 1956, -1, 378, 379, - -1, -1, -1, -1, -1, 502, -1, -1, 505, 506, - 507, -1, 509, 510, 511, 512, 513, 514, -1, -1, - -1, -1, 519, -1, 3291, 378, 379, -1, 3295, -1, - 8, -1, 3299, 11, -1, -1, -1, 15, 16, 17, - 18, 19, 20, 21, -1, -1, 3313, -1, -1, -1, - -1, 3318, -1, 3320, -1, -1, -1, -1, 36, -1, - -1, 3328, -1, -1, -1, -1, -1, -1, 46, -1, - 8, -1, -1, 11, -1, 53, -1, 15, 16, 3346, - -1, 19, 20, 21, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, 474, 475, -1, -1, 36, -1, - -1, -1, 80, -1, 2064, -1, -1, 2067, 46, -1, - -1, -1, -1, -1, -1, 53, -1, -1, 498, 499, - -1, 474, 475, -1, -1, -1, 3393, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 3403, -1, -1, -1, - -1, -1, 80, -1, -1, 498, 499, -1, 3415, -1, - -1, -1, 2112, -1, -1, -1, 2116, -1, -1, -1, - 2120, 2121, 2122, 2123, 2124, 2125, 2126, 2127, -1, -1, - -1, -1, -1, 2133, 2134, -1, 2136, 2137, -1, -1, - -1, 3448, -1, -1, -1, -1, -1, -1, -1, -1, - 2150, -1, -1, 2153, -1, -1, -1, -1, -1, 177, - -1, 2161, 2162, 2163, 2164, 2165, 2166, 2167, 2168, 2169, - 2170, -1, -1, -1, -1, -1, 194, -1, -1, -1, - -1, 199, 8, -1, -1, 11, -1, -1, -1, 15, - 16, 17, 18, 19, 20, 21, 2196, -1, -1, 177, - -1, -1, -1, -1, 222, 223, -1, -1, -1, -1, - 36, -1, -1, -1, -1, -1, 194, -1, -1, 237, - 46, 199, -1, -1, -1, -1, -1, 53, 3535, 3536, - 3537, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, 222, 223, -1, -1, -1, 2249, - -1, -1, -1, -1, 80, 3562, -1, 275, -1, 237, - 278, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, 292, -1, -1, 295, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 3603, 275, -1, -1, - 278, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, 292, -1, -1, 295, -1, -1, - -1, -1, 2322, -1, -1, -1, -1, -1, -1, -1, - -1, -1, 2332, 2333, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 177, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 194, -1, - -1, -1, -1, 199, -1, -1, 394, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 222, 223, -1, 2399, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 237, -1, -1, -1, -1, 394, -1, -1, -1, - -1, -1, -1, -1, -1, 2425, 2426, 2427, -1, -1, - 2430, 2431, 2432, 2433, 2434, 2435, -1, -1, -1, 2439, - 2440, 2441, 2442, 2443, 2444, 2445, 2446, 2447, 2448, 275, - -1, -1, 278, 2453, 2454, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 292, -1, -1, 295, - -1, -1, -1, -1, -1, -1, -1, -1, -1, 2479, - -1, -1, -1, -1, 502, 2485, -1, 505, 506, 507, - -1, 509, 510, 511, 512, 513, 514, -1, -1, -1, - -1, 519, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 2520, -1, -1, -1, 502, -1, -1, 505, 506, 507, - -1, 509, 510, 511, 512, 513, 514, 2537, -1, -1, - -1, -1, -1, 2543, -1, -1, -1, -1, -1, -1, - -1, 2551, 2552, -1, -1, -1, -1, -1, -1, 2559, - 2560, -1, -1, -1, -1, -1, -1, -1, 394, -1, - -1, -1, -1, 2573, 2574, 2575, 2576, -1, 2578, -1, - -1, -1, 2582, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 8, -1, -1, 11, - -1, -1, -1, 15, 16, 17, 18, 19, 20, 21, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, 36, -1, -1, -1, -1, -1, - -1, -1, -1, -1, 46, -1, -1, -1, 2638, -1, - -1, 53, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 80, -1, - -1, -1, -1, -1, -1, -1, 502, -1, -1, 505, - 506, 507, -1, 509, 510, 511, 512, 513, 514, -1, - -1, 8, -1, 519, 11, -1, -1, -1, 15, 16, - 17, 18, 19, 20, 21, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, 36, - -1, -1, -1, -1, -1, -1, -1, -1, -1, 46, - 8, -1, -1, 11, -1, -1, 53, 15, 16, 17, - 18, 19, 20, 21, -1, -1, -1, -1, 8, -1, - 2750, 11, -1, -1, -1, 15, 16, -1, 36, 19, - 20, 21, -1, 80, -1, 177, -1, -1, 46, -1, - -1, -1, 2772, -1, -1, 53, 36, -1, -1, -1, - -1, -1, 194, -1, -1, -1, 46, 199, -1, -1, - -1, -1, -1, 53, -1, -1, -1, -1, -1, -1, - -1, -1, 80, -1, -1, -1, -1, -1, -1, -1, - 222, 223, -1, -1, -1, -1, -1, -1, -1, -1, - 80, -1, -1, -1, -1, 237, -1, -1, 2828, -1, - 2830, -1, -1, -1, -1, -1, -1, -1, -1, 2839, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, 2852, -1, -1, 2855, -1, 2857, -1, -1, - 177, 2861, -1, 275, 2864, 2865, 278, -1, 2868, 2869, - -1, -1, -1, -1, -1, -1, 2876, 194, -1, -1, - 292, -1, 199, 295, -1, 2885, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, 177, - 2900, -1, -1, -1, -1, 222, 223, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 194, 177, -1, -1, - 237, 199, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, 194, -1, -1, -1, 2938, 199, - -1, -1, -1, -1, 222, 223, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 275, 237, - -1, 278, 222, 223, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 292, -1, 237, 295, -1, - -1, -1, 394, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 275, -1, -1, - 278, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, 292, 275, -1, 295, 278, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, 292, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 394, -1, -1, - 3080, 3081, -1, -1, -1, -1, -1, -1, -1, -1, - 502, -1, -1, 505, 506, 507, -1, 509, 510, 511, - 512, 513, 514, -1, -1, 3105, 3106, 519, -1, -1, - -1, -1, -1, -1, -1, -1, 394, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, 3129, - -1, -1, -1, -1, 394, -1, -1, -1, 3138, -1, - -1, -1, 3142, 3143, 3144, -1, -1, 3147, -1, -1, - 3150, 3151, -1, -1, -1, -1, -1, -1, -1, 3159, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 502, -1, -1, 505, 506, - 507, -1, 509, 510, 511, 512, 513, 514, -1, -1, - 3200, -1, 519, -1, -1, -1, 3206, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, 3219, - -1, -1, -1, -1, 502, -1, -1, 505, 506, 507, - -1, 509, 510, 511, 512, 513, 514, -1, -1, -1, - -1, 519, 502, -1, -1, 505, 506, 507, -1, 509, - 510, 511, 512, 513, 514, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, 3279, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 3315, 3316, 3317, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 3335, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 3347, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 3408, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 3418, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 3443, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 3468, -1, - -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, 4, 5, 6, 7, 8, - 9, 10, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 3511, -1, 22, 23, 24, 25, 26, 27, 28, - 29, -1, 31, 32, 33, -1, -1, -1, -1, -1, - 39, -1, -1, 42, 43, 44, -1, 46, 47, 48, - 49, 50, 51, 52, 53, 54, 55, 56, 57, -1, - 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, - 69, 70, 71, 72, 73, 3565, 75, 76, 77, 78, - 79, -1, 81, -1, 83, 84, 85, 86, 87, 88, - 89, 90, 91, 92, -1, 94, 95, 96, 97, 98, - 99, -1, 101, 102, 103, 104, 105, 106, 107, 108, - 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, - -1, 120, 121, 122, 123, 124, 125, 126, 127, 128, - 129, 130, 131, -1, -1, 134, 135, 136, 137, 138, - -1, 140, 141, 142, -1, 144, 145, 146, -1, 148, - 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, - 159, 160, 161, -1, 163, 164, 165, 166, -1, 168, - -1, 170, 171, 172, 173, 174, 175, 176, 177, 178, - -1, 180, -1, 182, 183, 184, 185, -1, 187, 188, - 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, - -1, 200, 201, 202, 203, 204, 205, 206, -1, 208, - 209, 210, 211, 212, 213, 214, 215, 216, 217, -1, - 219, -1, 221, 222, 223, 224, 225, 226, 227, 228, - 229, 230, 231, -1, -1, 234, 235, 236, 237, -1, - 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, - 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, - 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, - 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, - 279, 280, 281, 282, 283, 284, 285, 286, -1, 288, - 289, -1, -1, 292, 293, 294, -1, -1, 297, 298, - 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, - 309, 310, 311, 312, 313, 314, 315, 316, 317, -1, - 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, - -1, 330, 331, 332, 333, 334, 335, -1, 337, 338, - 339, 340, 341, 342, 343, 344, 345, 346, -1, 348, - 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, - 359, 360, -1, 362, 363, 364, 365, 366, 367, 368, - 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, - 379, 380, 381, 382, -1, 384, 385, 386, 387, 388, - 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, - -1, 400, 401, 402, 403, 404, 405, 406, 407, 408, - 409, 410, 411, 412, 413, 414, 415, -1, 417, 418, - 419, 420, 421, 422, 423, 424, 425, 426, -1, 428, - 429, 430, -1, -1, 433, 434, 435, 436, 437, 438, - 439, 440, 441, 442, 443, 444, 445, 446, -1, -1, - 449, 450, 451, 452, 453, 454, 455, 456, -1, 458, - 459, 460, 461, 462, 463, 464, 465, -1, 467, 468, - 469, 470, 471, 472, 473, 474, 475, -1, -1, 478, - -1, 480, 481, 482, 483, 484, 485, 486, 487, 488, - 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, - 499, 500, 501, 502, -1, 504, -1, -1, -1, -1, - 509, 510, 511, -1, -1, -1, -1, 516, -1, 518, - 519, -1, -1, -1, -1, 524, 525, 526, 527, 3, - 4, 5, 6, 7, 8, 9, 10, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 22, 23, - 24, 25, 26, 27, 28, 29, -1, 31, 32, 33, - -1, -1, -1, -1, -1, 39, -1, -1, 42, 43, - 44, -1, 46, 47, 48, 49, 50, 51, 52, 53, - 54, 55, 56, 57, -1, 59, 60, 61, 62, 63, - 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, - -1, 75, 76, 77, 78, 79, -1, 81, -1, 83, - 84, 85, 86, 87, 88, 89, 90, 91, 92, -1, - 94, 95, 96, 97, 98, 99, -1, 101, 102, 103, - 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, - 114, 115, 116, 117, 118, -1, 120, 121, 122, 123, - 124, 125, 126, 127, 128, 129, 130, 131, -1, -1, - 134, 135, 136, 137, 138, -1, 140, 141, 142, -1, - 144, 145, 146, -1, 148, 149, 150, 151, 152, 153, - 154, 155, 156, 157, 158, 159, 160, 161, -1, 163, - 164, 165, 166, -1, 168, -1, 170, 171, 172, 173, - 174, 175, 176, 177, 178, -1, 180, -1, 182, 183, - 184, 185, -1, 187, 188, 189, 190, 191, 192, 193, - 194, 195, 196, 197, 198, -1, 200, 201, 202, 203, - 204, 205, 206, -1, 208, 209, 210, 211, 212, 213, - 214, 215, 216, 217, -1, 219, -1, 221, 222, 223, - 224, 225, 226, 227, 228, 229, 230, 231, -1, -1, - 234, 235, 236, 237, -1, 239, 240, 241, 242, 243, - 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, - 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, - 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, - 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, - 284, 285, 286, -1, 288, 289, -1, -1, 292, 293, - 294, -1, -1, 297, 298, 299, 300, 301, 302, 303, - 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, - 314, 315, 316, 317, -1, 319, 320, 321, 322, 323, - 324, 325, 326, 327, 328, -1, 330, 331, 332, 333, - 334, 335, -1, 337, 338, 339, 340, 341, 342, 343, - 344, 345, 346, -1, 348, 349, 350, 351, 352, 353, - 354, 355, 356, 357, 358, 359, 360, -1, 362, 363, - 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, - 374, 375, 376, 377, 378, 379, 380, 381, 382, -1, - 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, - 394, 395, 396, 397, 398, -1, 400, 401, 402, 403, - 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, - 414, 415, -1, 417, 418, 419, 420, 421, 422, 423, - 424, 425, 426, -1, 428, 429, 430, -1, -1, 433, - 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, - 444, 445, 446, -1, -1, 449, 450, 451, 452, 453, - 454, 455, 456, -1, 458, 459, 460, 461, 462, 463, - 464, 465, -1, 467, 468, 469, 470, 471, 472, 473, - 474, 475, -1, -1, 478, -1, 480, 481, 482, 483, - 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, - 494, 495, 496, 497, 498, 499, 500, 501, 502, -1, - 504, -1, -1, -1, -1, 509, 510, 511, -1, -1, - -1, -1, 516, -1, 518, -1, -1, -1, -1, -1, - 524, 525, 526, 527, 3, 4, 5, 6, 7, 8, - 9, 10, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 22, 23, 24, 25, 26, 27, 28, - 29, -1, 31, 32, 33, -1, -1, -1, -1, -1, - 39, -1, -1, 42, 43, 44, -1, 46, 47, 48, - 49, 50, 51, 52, 53, 54, 55, 56, 57, -1, - 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, - 69, 70, 71, 72, 73, -1, 75, 76, 77, 78, - 79, -1, 81, -1, 83, 84, 85, 86, 87, 88, - 89, 90, 91, 92, -1, 94, 95, 96, 97, 98, - 99, -1, 101, 102, 103, 104, 105, 106, 107, 108, - 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, - -1, 120, 121, 122, 123, 124, 125, -1, -1, 128, - 129, 130, 131, -1, -1, 134, 135, 136, 137, 138, - -1, 140, 141, 142, -1, 144, 145, 146, -1, 148, - 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, - 159, 160, 161, -1, 163, 164, 165, 166, -1, 168, - -1, 170, 171, 172, 173, 174, 175, 176, 177, 178, - -1, 180, -1, 182, 183, 184, 185, -1, 187, 188, - 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, - -1, 200, 201, 202, 203, 204, 205, 206, -1, 208, - 209, 210, 211, 212, 213, 214, 215, 216, 217, -1, - 219, -1, 221, 222, 223, 224, 225, 226, 227, 228, - 229, 230, 231, -1, -1, 234, 235, 236, 237, -1, - 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, - 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, - 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, - 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, - 279, 280, 281, 282, 283, 284, 285, 286, -1, 288, - 289, -1, -1, 292, 293, 294, -1, -1, 297, 298, - 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, - 309, 310, 311, 312, 313, 314, 315, 316, 317, -1, - 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, - -1, 330, 331, 332, 333, 334, 335, -1, 337, 338, - 339, 340, 341, 342, 343, 344, 345, 346, -1, 348, - 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, - 359, 360, -1, 362, 363, 364, 365, 366, 367, 368, - 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, - 379, 380, 381, 382, -1, 384, 385, 386, 387, 388, - 389, 390, 391, 392, -1, 394, 395, 396, 397, 398, - -1, 400, 401, 402, 403, 404, 405, 406, 407, 408, - 409, 410, 411, 412, 413, 414, -1, -1, 417, 418, - 419, 420, 421, 422, 423, 424, 425, 426, -1, 428, - 429, 430, -1, -1, 433, 434, 435, 436, 437, 438, - 439, 440, 441, 442, 443, 444, 445, 446, -1, -1, - 449, 450, 451, 452, 453, 454, 455, 456, -1, 458, - 459, 460, 461, 462, 463, 464, 465, -1, 467, 468, - 469, 470, 471, 472, 473, 474, 475, -1, -1, 478, - -1, 480, 481, 482, 483, 484, 485, 486, 487, 488, - 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, - 499, 500, 501, 502, -1, 504, -1, -1, -1, -1, - 509, 510, 511, -1, -1, -1, -1, 516, -1, 518, - -1, -1, -1, -1, -1, 524, 525, 526, 527, 3, - 4, 5, 6, 7, 8, 9, 10, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 22, 23, - 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, - -1, -1, -1, 37, -1, 39, -1, -1, 42, 43, - 44, -1, 46, 47, 48, 49, 50, 51, 52, 53, - 54, 55, 56, 57, -1, 59, 60, 61, 62, 63, - 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, - -1, 75, 76, 77, 78, 79, -1, 81, -1, 83, - 84, 85, 86, 87, 88, 89, 90, 91, 92, -1, - 94, 95, 96, 97, 98, 99, -1, 101, 102, 103, - 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, - 114, 115, 116, 117, 118, -1, 120, 121, 122, 123, - 124, 125, -1, -1, 128, 129, 130, 131, 132, -1, - 134, 135, 136, 137, 138, -1, 140, 141, 142, -1, - 144, 145, 146, -1, 148, 149, 150, 151, 152, 153, - 154, 155, 156, 157, 158, 159, 160, 161, -1, 163, - 164, 165, 166, -1, 168, -1, 170, 171, -1, 173, - 174, 175, 176, 177, 178, -1, 180, -1, 182, 183, - 184, 185, -1, 187, 188, 189, 190, 191, 192, 193, - 194, 195, 196, 197, 198, -1, 200, 201, 202, 203, - 204, 205, 206, -1, 208, 209, 210, 211, 212, 213, - 214, 215, 216, 217, -1, 219, -1, 221, 222, 223, - 224, 225, 226, 227, 228, 229, 230, 231, -1, -1, - 234, 235, 236, 237, -1, 239, 240, 241, 242, 243, - 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, - 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, - 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, - 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, - 284, 285, 286, -1, 288, 289, -1, -1, 292, 293, - 294, -1, -1, 297, 298, 299, 300, 301, 302, 303, - 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, - 314, -1, -1, -1, -1, 319, 320, 321, 322, 323, - 324, 325, 326, 327, 328, -1, 330, 331, 332, 333, - 334, 335, -1, 337, 338, 339, 340, 341, 342, 343, - 344, 345, 346, -1, 348, 349, 350, 351, 352, 353, - 354, 355, 356, 357, 358, 359, 360, -1, 362, 363, - 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, - 374, 375, 376, 377, 378, 379, 380, 381, -1, 383, - 384, 385, 386, 387, 388, 389, 390, 391, 392, -1, - 394, 395, 396, 397, 398, -1, 400, 401, 402, 403, - 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, - 414, -1, -1, 417, 418, -1, 420, 421, 422, 423, - 424, 425, 426, -1, 428, 429, 430, -1, -1, 433, - 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, - 444, 445, 446, -1, -1, 449, 450, 451, -1, 453, - 454, 455, 456, -1, 458, 459, 460, 461, 462, 463, - 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, - 474, 475, -1, -1, 478, -1, -1, 481, 482, 483, - 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, - 494, 495, 496, 497, 498, 499, 500, 501, 502, -1, - -1, -1, -1, -1, -1, 509, 510, 511, -1, -1, - -1, -1, 516, -1, 518, 519, -1, -1, -1, -1, - 524, 525, 526, 527, 3, 4, 5, 6, 7, -1, - 9, 10, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 22, 23, 24, 25, 26, 27, 28, - 29, -1, 31, 32, 33, -1, -1, -1, -1, -1, - 39, -1, -1, 42, 43, 44, -1, 46, 47, 48, - 49, 50, 51, 52, 53, 54, 55, 56, 57, -1, - 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, - 69, 70, 71, 72, 73, -1, 75, 76, 77, 78, - 79, -1, 81, -1, 83, 84, 85, 86, 87, 88, - 89, 90, 91, 92, -1, 94, 95, 96, 97, 98, - 99, -1, 101, 102, 103, 104, 105, 106, 107, 108, - 109, 110, 111, 112, 113, 114, 115, 116, -1, 118, - -1, 120, 121, 122, 123, 124, 125, 126, 127, 128, - 129, 130, 131, -1, -1, 134, 135, 136, 137, 138, - -1, 140, 141, 142, -1, 144, 145, 146, -1, 148, - 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, - 159, 160, 161, -1, 163, 164, 165, 166, -1, 168, - -1, 170, 171, 172, 173, 174, 175, 176, 177, 178, - -1, 180, -1, 182, 183, 184, 185, -1, 187, 188, - 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, - -1, 200, 201, 202, 203, 204, 205, 206, -1, 208, - 209, 210, 211, 212, 213, 214, 215, 216, 217, -1, - 219, -1, 221, 222, 223, 224, 225, 226, 227, 228, - 229, 230, 231, -1, -1, 234, 235, 236, 237, -1, - 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, - 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, - 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, - 269, 270, 271, 272, 273, 274, -1, 276, 277, 278, - 279, 280, 281, 282, 283, 284, 285, 286, -1, 288, - 289, -1, -1, 292, 293, 294, -1, -1, 297, 298, - 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, - 309, 310, 311, 312, 313, 314, 315, 316, 317, -1, - 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, - -1, 330, 331, 332, 333, 334, 335, -1, 337, 338, - 339, 340, 341, 342, 343, 344, 345, 346, -1, 348, - 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, - 359, 360, -1, 362, 363, 364, 365, 366, 367, 368, - 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, - 379, 380, 381, 382, -1, 384, 385, 386, 387, 388, - 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, - -1, 400, 401, 402, 403, 404, 405, 406, 407, 408, - 409, 410, 411, 412, 413, 414, 415, -1, 417, 418, - 419, 420, 421, 422, 423, 424, 425, 426, -1, 428, - 429, 430, -1, -1, 433, 434, 435, 436, 437, 438, - 439, 440, 441, 442, 443, 444, 445, 446, -1, -1, - 449, 450, 451, 452, 453, 454, 455, 456, -1, 458, - 459, 460, 461, 462, 463, 464, 465, -1, 467, 468, - 469, 470, 471, 472, 473, 474, 475, -1, -1, 478, - -1, 480, 481, 482, 483, 484, 485, 486, 487, 488, - 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, - 499, 500, 501, -1, -1, 504, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 516, -1, 518, - -1, -1, -1, -1, -1, 524, 525, 526, 527, 3, - 4, 5, 6, 7, 8, 9, 10, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 22, 23, - 24, 25, 26, 27, 28, 29, -1, 31, 32, 33, - -1, -1, -1, -1, -1, 39, -1, -1, 42, 43, - 44, -1, 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, - -1, 75, 76, 77, 78, 79, -1, 81, -1, 83, - 84, 85, 86, 87, 88, 89, 90, 91, 92, -1, - 94, 95, 96, 97, 98, 99, -1, 101, 102, 103, - 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, - 114, 115, 116, 117, 118, -1, 120, 121, 122, 123, - 124, 125, -1, -1, 128, 129, 130, 131, -1, -1, - 134, 135, 136, 137, 138, -1, 140, 141, 142, -1, - 144, 145, 146, -1, 148, 149, 150, 151, 152, 153, - 154, 155, 156, 157, 158, 159, 160, 161, -1, 163, - 164, 165, 166, -1, 168, -1, 170, 171, 172, 173, - 174, 175, 176, 177, 178, -1, 180, -1, 182, 183, - 184, 185, -1, 187, 188, 189, 190, 191, 192, 193, - 194, 195, 196, 197, 198, -1, 200, 201, 202, 203, - 204, 205, 206, -1, 208, 209, 210, 211, 212, 213, - 214, 215, 216, 217, -1, 219, -1, 221, 222, 223, - 224, 225, 226, 227, 228, 229, 230, 231, -1, 233, - 234, 235, 236, 237, -1, 239, 240, 241, 242, 243, - 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, - 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, - 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, - 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, - 284, 285, 286, -1, 288, 289, -1, -1, 292, 293, - 294, -1, -1, 297, 298, 299, 300, 301, 302, 303, - 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, - 314, -1, -1, -1, -1, 319, 320, 321, 322, 323, - 324, 325, 326, 327, 328, -1, 330, 331, 332, 333, - 334, 335, -1, 337, 338, 339, 340, 341, 342, 343, - 344, 345, 346, -1, 348, 349, 350, 351, 352, 353, - 354, 355, 356, 357, 358, 359, 360, -1, 362, 363, - 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, - 374, 375, 376, 377, 378, 379, 380, 381, -1, -1, - 384, 385, 386, 387, 388, 389, 390, 391, 392, -1, - 394, 395, 396, 397, 398, -1, 400, 401, 402, 403, - 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, - 414, -1, -1, 417, 418, -1, 420, 421, 422, 423, - 424, 425, 426, -1, 428, 429, 430, -1, 432, 433, - 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, - 444, 445, 446, -1, -1, 449, 450, 451, -1, 453, - 454, 455, 456, -1, 458, 459, 460, 461, 462, 463, - 464, 465, -1, 467, 468, 469, 470, 471, 472, 473, - 474, 475, -1, -1, 478, -1, -1, 481, 482, 483, - 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, - 494, 495, 496, 497, 498, 499, 500, 501, 502, -1, - -1, -1, -1, -1, -1, 509, 510, 511, -1, -1, - -1, -1, 516, -1, 518, -1, -1, -1, -1, -1, - 524, 525, 526, 527, 3, 4, 5, 6, 7, 8, - 9, 10, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 22, 23, 24, 25, 26, 27, 28, - 29, -1, 31, 32, 33, -1, -1, -1, 37, -1, - 39, -1, -1, 42, 43, 44, -1, 46, 47, 48, - 49, 50, 51, 52, 53, 54, 55, 56, 57, -1, - 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, - 69, 70, 71, 72, 73, -1, 75, 76, 77, 78, - 79, -1, 81, -1, 83, 84, 85, 86, 87, 88, - 89, 90, 91, 92, -1, 94, 95, 96, 97, 98, - 99, -1, 101, 102, 103, 104, 105, 106, 107, 108, - 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, - -1, 120, 121, 122, 123, 124, 125, -1, -1, 128, - 129, 130, 131, -1, -1, 134, 135, 136, 137, 138, - -1, 140, 141, 142, -1, 144, 145, 146, -1, 148, - 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, - 159, 160, 161, -1, 163, 164, 165, 166, -1, 168, - -1, 170, 171, -1, 173, 174, 175, 176, 177, 178, - -1, 180, -1, 182, 183, 184, 185, -1, 187, 188, - 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, - -1, 200, 201, 202, 203, 204, 205, 206, -1, 208, - 209, 210, 211, 212, 213, 214, 215, 216, 217, -1, - 219, -1, 221, 222, 223, 224, 225, 226, 227, 228, - 229, 230, 231, -1, -1, 234, 235, 236, 237, -1, - 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, - 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, - 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, - 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, - 279, 280, 281, 282, 283, 284, 285, 286, -1, 288, - 289, -1, -1, 292, 293, 294, -1, -1, 297, 298, - 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, - 309, 310, 311, 312, 313, 314, -1, -1, -1, -1, - 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, - -1, 330, 331, 332, 333, 334, 335, -1, 337, 338, - 339, 340, 341, 342, 343, 344, 345, 346, -1, 348, - 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, - 359, 360, -1, 362, 363, 364, 365, 366, 367, 368, - 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, - 379, 380, 381, -1, 383, 384, 385, 386, 387, 388, - 389, 390, 391, 392, -1, 394, 395, 396, 397, 398, - -1, 400, 401, 402, 403, 404, 405, 406, 407, 408, - 409, 410, 411, 412, 413, 414, -1, -1, 417, 418, - -1, 420, 421, 422, 423, 424, 425, 426, -1, 428, - 429, 430, -1, -1, 433, 434, 435, 436, 437, 438, - 439, 440, 441, 442, 443, 444, 445, 446, -1, -1, - 449, 450, 451, -1, 453, 454, 455, 456, -1, 458, - 459, 460, 461, 462, 463, 464, 465, 466, 467, 468, - 469, 470, 471, 472, 473, 474, 475, -1, -1, 478, - -1, -1, 481, 482, 483, 484, 485, 486, 487, 488, - 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, - 499, 500, 501, 502, -1, -1, -1, -1, -1, -1, - 509, 510, 511, -1, -1, -1, -1, 516, -1, 518, - -1, -1, -1, -1, -1, 524, 525, 526, 527, 3, - 4, 5, 6, 7, 8, 9, 10, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 22, 23, - 24, 25, 26, 27, 28, 29, -1, 31, 32, 33, - -1, -1, -1, 37, -1, 39, -1, -1, 42, 43, - 44, -1, 46, 47, 48, 49, 50, 51, 52, 53, - 54, 55, 56, 57, -1, 59, 60, 61, 62, 63, - 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, - -1, 75, 76, 77, 78, 79, -1, 81, -1, 83, - 84, 85, 86, 87, 88, 89, 90, 91, 92, -1, - 94, 95, 96, 97, 98, 99, -1, 101, 102, 103, - 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, - 114, 115, 116, 117, 118, -1, 120, 121, 122, 123, - 124, 125, -1, -1, 128, 129, 130, 131, -1, -1, - 134, 135, 136, 137, 138, -1, 140, 141, 142, -1, - 144, 145, 146, -1, 148, 149, 150, 151, 152, 153, - 154, 155, 156, 157, 158, 159, 160, 161, -1, 163, - 164, 165, 166, -1, 168, -1, 170, 171, -1, 173, - 174, 175, 176, 177, 178, -1, 180, -1, 182, 183, - 184, 185, -1, 187, 188, 189, 190, 191, 192, 193, - 194, 195, 196, 197, 198, -1, 200, 201, 202, 203, - 204, 205, 206, -1, 208, 209, 210, 211, 212, 213, - 214, 215, 216, 217, -1, 219, -1, 221, 222, 223, - 224, 225, 226, 227, 228, 229, 230, 231, -1, -1, - 234, 235, 236, 237, -1, 239, 240, 241, 242, 243, - 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, - 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, - 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, - 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, - 284, 285, 286, -1, 288, 289, -1, -1, 292, 293, - 294, -1, -1, 297, 298, 299, 300, 301, 302, 303, - 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, - 314, -1, -1, -1, -1, 319, 320, 321, 322, 323, - 324, 325, 326, 327, 328, -1, 330, 331, 332, 333, - 334, 335, -1, 337, 338, 339, 340, 341, 342, 343, - 344, 345, 346, -1, 348, 349, 350, 351, 352, 353, - 354, 355, 356, 357, 358, 359, 360, -1, 362, 363, - 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, - 374, 375, 376, 377, 378, 379, 380, 381, -1, 383, - 384, 385, 386, 387, 388, 389, 390, 391, 392, -1, - 394, 395, 396, 397, 398, -1, 400, 401, 402, 403, - 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, - 414, -1, -1, 417, 418, -1, 420, 421, 422, 423, - 424, 425, 426, -1, 428, 429, 430, -1, -1, 433, - 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, - 444, 445, 446, -1, -1, 449, 450, 451, -1, 453, - 454, 455, 456, -1, 458, 459, 460, 461, 462, 463, - 464, 465, -1, 467, 468, 469, 470, 471, 472, 473, - 474, 475, -1, -1, 478, -1, -1, 481, 482, 483, - 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, - 494, 495, 496, 497, 498, 499, 500, 501, 502, -1, - -1, -1, -1, -1, -1, 509, 510, 511, -1, -1, - -1, -1, 516, -1, 518, 519, -1, -1, -1, -1, - 524, 525, 526, 527, 3, 4, 5, 6, 7, 8, - 9, 10, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 22, 23, 24, 25, 26, 27, 28, - 29, 30, 31, 32, 33, -1, -1, -1, -1, 38, - 39, -1, -1, 42, 43, 44, -1, 46, 47, 48, - 49, 50, 51, 52, 53, 54, 55, 56, 57, -1, - 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, - 69, 70, 71, 72, 73, -1, 75, 76, 77, 78, - 79, -1, 81, -1, 83, 84, 85, 86, 87, 88, - 89, 90, 91, 92, -1, 94, 95, 96, 97, 98, - 99, -1, 101, 102, 103, 104, 105, 106, 107, 108, - 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, - -1, 120, 121, 122, 123, 124, 125, -1, -1, 128, - 129, 130, 131, -1, -1, 134, 135, 136, 137, 138, - -1, 140, 141, 142, -1, 144, 145, 146, -1, 148, - 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, - 159, 160, 161, -1, 163, 164, 165, 166, -1, 168, - -1, 170, 171, -1, 173, 174, 175, 176, 177, 178, - -1, 180, -1, 182, 183, 184, 185, -1, 187, 188, - 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, - -1, 200, 201, 202, 203, 204, 205, 206, -1, 208, - 209, 210, 211, 212, 213, 214, 215, 216, 217, -1, - 219, -1, 221, 222, 223, 224, 225, 226, 227, 228, - 229, 230, 231, -1, -1, 234, 235, 236, 237, -1, - 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, - 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, - 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, - 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, - 279, 280, 281, 282, 283, 284, 285, 286, -1, 288, - 289, -1, -1, 292, 293, 294, -1, -1, 297, 298, - 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, - 309, 310, 311, 312, 313, 314, -1, -1, -1, -1, - 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, - -1, 330, 331, 332, 333, 334, 335, -1, 337, 338, - 339, 340, 341, 342, 343, 344, 345, 346, -1, 348, - 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, - 359, 360, -1, 362, 363, 364, 365, 366, 367, 368, - 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, - 379, 380, 381, -1, -1, 384, 385, 386, 387, 388, - 389, 390, 391, 392, -1, 394, 395, 396, 397, 398, - 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, - 409, 410, 411, 412, 413, 414, -1, -1, 417, 418, - -1, 420, 421, 422, 423, 424, 425, 426, -1, 428, - 429, 430, -1, -1, 433, 434, 435, 436, 437, 438, - 439, 440, 441, 442, 443, 444, 445, 446, -1, -1, - 449, 450, 451, -1, 453, 454, 455, 456, -1, 458, - 459, 460, 461, 462, 463, 464, 465, -1, 467, 468, - 469, 470, 471, 472, 473, 474, 475, -1, -1, 478, - -1, -1, 481, 482, 483, 484, 485, 486, 487, 488, - 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, - 499, 500, 501, 502, -1, -1, -1, -1, -1, -1, - 509, 510, 511, -1, -1, -1, -1, 516, -1, 518, - -1, -1, -1, -1, -1, 524, 525, 526, 527, 3, - 4, 5, 6, 7, 8, 9, 10, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 22, 23, - 24, 25, 26, 27, 28, 29, -1, 31, 32, 33, - -1, -1, -1, 37, -1, 39, -1, -1, 42, 43, - 44, -1, 46, 47, 48, 49, 50, 51, 52, 53, - 54, 55, 56, 57, -1, 59, 60, 61, 62, 63, - 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, - -1, 75, 76, 77, 78, 79, -1, 81, -1, 83, - 84, 85, 86, 87, 88, 89, 90, 91, 92, -1, - 94, 95, 96, 97, 98, 99, -1, 101, 102, 103, - 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, - 114, 115, 116, 117, 118, -1, 120, 121, 122, 123, - 124, 125, -1, -1, 128, 129, 130, 131, -1, -1, - 134, 135, 136, 137, 138, -1, 140, 141, 142, -1, - 144, 145, 146, -1, 148, 149, 150, 151, 152, 153, - 154, 155, 156, 157, 158, 159, 160, 161, -1, 163, - 164, 165, 166, -1, 168, -1, 170, 171, -1, 173, - 174, 175, 176, 177, 178, -1, 180, -1, 182, 183, - 184, 185, -1, 187, 188, 189, 190, 191, 192, 193, - 194, 195, 196, 197, 198, -1, 200, 201, 202, 203, - 204, 205, 206, -1, 208, 209, 210, 211, 212, 213, - 214, 215, 216, 217, -1, 219, -1, 221, 222, 223, - 224, 225, 226, 227, 228, 229, 230, 231, -1, -1, - 234, 235, 236, 237, -1, 239, 240, 241, 242, 243, - 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, - 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, - 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, - 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, - 284, 285, 286, -1, 288, 289, -1, -1, 292, 293, - 294, -1, -1, 297, 298, 299, 300, 301, 302, 303, - 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, - 314, -1, -1, -1, -1, 319, 320, 321, 322, 323, - 324, 325, 326, 327, 328, -1, 330, 331, 332, 333, - 334, 335, -1, 337, 338, 339, 340, 341, 342, 343, - 344, 345, 346, -1, 348, 349, 350, 351, 352, 353, - 354, 355, 356, 357, 358, 359, 360, -1, 362, 363, - 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, - 374, 375, 376, 377, 378, 379, 380, 381, -1, 383, - 384, 385, 386, 387, 388, 389, 390, 391, 392, -1, - 394, 395, 396, 397, 398, -1, 400, 401, 402, 403, - 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, - 414, -1, -1, 417, 418, -1, 420, 421, 422, 423, - 424, 425, 426, -1, 428, 429, 430, -1, -1, 433, - 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, - 444, 445, 446, -1, -1, 449, 450, 451, -1, 453, - 454, 455, 456, -1, 458, 459, 460, 461, 462, 463, - 464, 465, -1, 467, 468, 469, 470, 471, 472, 473, - 474, 475, -1, -1, 478, -1, -1, 481, 482, 483, - 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, - 494, 495, 496, 497, 498, 499, 500, 501, 502, -1, - -1, -1, -1, -1, -1, 509, 510, 511, -1, -1, - -1, -1, 516, -1, 518, 519, -1, -1, -1, -1, - 524, 525, 526, 527, 3, 4, 5, 6, 7, 8, - 9, 10, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 22, 23, 24, 25, 26, 27, 28, - 29, -1, 31, 32, 33, -1, -1, -1, 37, -1, - 39, -1, -1, 42, 43, 44, -1, 46, 47, 48, - 49, 50, 51, 52, 53, 54, 55, 56, 57, -1, - 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, - 69, 70, 71, 72, 73, -1, 75, 76, 77, 78, - 79, -1, 81, -1, 83, 84, 85, 86, 87, 88, - 89, 90, 91, 92, -1, 94, 95, 96, 97, 98, - 99, -1, 101, 102, 103, 104, 105, 106, 107, 108, - 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, - -1, 120, 121, 122, 123, 124, 125, -1, -1, 128, - 129, 130, 131, -1, -1, 134, 135, 136, 137, 138, - -1, 140, 141, 142, -1, 144, 145, 146, -1, 148, - 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, - 159, 160, 161, -1, 163, 164, 165, 166, -1, 168, - -1, 170, 171, -1, 173, 174, 175, 176, 177, 178, - -1, 180, -1, 182, 183, 184, 185, -1, 187, 188, - 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, - -1, 200, 201, 202, 203, 204, 205, 206, -1, 208, - 209, 210, 211, 212, 213, 214, 215, 216, 217, -1, - 219, -1, 221, 222, 223, 224, 225, 226, 227, 228, - 229, 230, 231, -1, -1, 234, 235, 236, 237, -1, - 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, - 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, - 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, - 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, - 279, 280, 281, 282, 283, 284, 285, 286, -1, 288, - 289, -1, -1, 292, 293, 294, -1, -1, 297, 298, - 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, - 309, 310, 311, 312, 313, 314, -1, -1, -1, -1, - 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, - -1, 330, 331, 332, 333, 334, 335, -1, 337, 338, - 339, 340, 341, 342, 343, 344, 345, 346, -1, 348, - 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, - 359, 360, -1, 362, 363, 364, 365, 366, 367, 368, - 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, - 379, 380, 381, -1, 383, 384, 385, 386, 387, 388, - 389, 390, 391, 392, -1, 394, 395, 396, 397, 398, - -1, 400, 401, 402, 403, 404, 405, 406, 407, 408, - 409, 410, 411, 412, 413, 414, -1, -1, 417, 418, - -1, 420, 421, 422, 423, 424, 425, 426, -1, 428, - 429, 430, -1, -1, 433, 434, 435, 436, 437, 438, - 439, 440, 441, 442, 443, 444, 445, 446, -1, -1, - 449, 450, 451, -1, 453, 454, 455, 456, -1, 458, - 459, 460, 461, 462, 463, 464, 465, -1, 467, 468, - 469, 470, 471, 472, 473, 474, 475, -1, -1, 478, - -1, -1, 481, 482, 483, 484, 485, 486, 487, 488, - 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, - 499, 500, 501, 502, -1, -1, -1, -1, -1, -1, - 509, 510, 511, -1, -1, -1, -1, 516, -1, 518, - -1, -1, -1, -1, -1, 524, 525, 526, 527, 3, - 4, 5, 6, 7, 8, 9, 10, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 22, 23, - 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, - -1, -1, -1, -1, -1, 39, -1, -1, 42, 43, - 44, -1, 46, 47, 48, 49, 50, 51, 52, 53, - 54, 55, 56, 57, -1, 59, 60, 61, 62, 63, - 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, - -1, 75, 76, 77, 78, 79, -1, 81, -1, 83, - 84, 85, 86, 87, 88, 89, 90, 91, 92, -1, - 94, 95, 96, 97, 98, 99, -1, 101, 102, 103, - 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, - 114, 115, 116, 117, 118, -1, 120, 121, 122, 123, - 124, 125, -1, -1, 128, 129, 130, 131, -1, -1, - 134, 135, 136, 137, 138, -1, 140, 141, 142, -1, - 144, 145, 146, -1, 148, 149, 150, 151, 152, 153, - 154, 155, 156, 157, 158, 159, 160, 161, -1, 163, - 164, 165, 166, -1, 168, -1, 170, 171, -1, 173, - 174, 175, 176, 177, 178, -1, 180, -1, 182, 183, - 184, 185, -1, 187, 188, 189, 190, 191, 192, 193, - 194, 195, 196, 197, 198, -1, 200, 201, 202, 203, - 204, 205, 206, -1, 208, 209, 210, 211, 212, 213, - 214, 215, 216, 217, -1, 219, -1, 221, 222, 223, - 224, 225, 226, 227, 228, 229, 230, 231, -1, -1, - 234, 235, 236, 237, -1, 239, 240, 241, 242, 243, - 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, - 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, - 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, - 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, - 284, 285, 286, -1, 288, 289, -1, -1, 292, 293, - 294, -1, -1, 297, 298, 299, 300, 301, 302, 303, - 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, - 314, -1, -1, -1, -1, 319, 320, 321, 322, 323, - 324, 325, 326, 327, 328, -1, 330, 331, 332, 333, - 334, 335, -1, 337, 338, 339, 340, 341, 342, 343, - 344, 345, 346, -1, 348, 349, 350, 351, 352, 353, - 354, 355, 356, 357, 358, 359, 360, -1, 362, 363, - 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, - 374, 375, 376, 377, 378, 379, 380, 381, -1, -1, - 384, 385, 386, 387, 388, 389, 390, 391, 392, -1, - 394, 395, 396, 397, 398, -1, 400, 401, 402, 403, - 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, - 414, -1, -1, 417, 418, -1, 420, 421, 422, 423, - 424, 425, 426, -1, 428, 429, 430, -1, -1, 433, - 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, - 444, 445, 446, -1, -1, 449, 450, 451, -1, 453, - 454, 455, 456, -1, 458, 459, 460, 461, 462, 463, - 464, 465, -1, 467, 468, 469, 470, 471, 472, 473, - 474, 475, -1, -1, 478, -1, -1, 481, 482, 483, - 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, - 494, 495, 496, 497, 498, 499, 500, 501, 502, -1, - -1, -1, -1, -1, -1, 509, 510, 511, -1, -1, - -1, -1, 516, -1, 518, -1, -1, -1, -1, -1, - 524, 525, 526, 527, 3, 4, 5, 6, 7, 8, - 9, 10, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 22, 23, 24, 25, 26, 27, 28, - 29, 30, 31, 32, 33, -1, -1, -1, -1, -1, - 39, -1, -1, 42, 43, 44, -1, 46, 47, 48, - 49, 50, 51, 52, 53, 54, 55, 56, 57, -1, - 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, - 69, 70, 71, 72, 73, -1, 75, 76, 77, 78, - 79, -1, 81, -1, 83, 84, 85, 86, 87, 88, - 89, 90, 91, 92, -1, 94, 95, 96, 97, 98, - 99, -1, 101, 102, 103, 104, 105, 106, 107, 108, - 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, - -1, 120, 121, 122, 123, 124, 125, -1, -1, 128, - 129, 130, 131, -1, -1, 134, 135, 136, 137, 138, - -1, 140, 141, 142, -1, 144, 145, 146, -1, 148, - 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, - 159, 160, 161, -1, 163, 164, 165, 166, -1, 168, - -1, 170, 171, -1, 173, 174, 175, 176, 177, 178, - -1, 180, -1, 182, 183, 184, 185, -1, 187, 188, - 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, - -1, 200, 201, 202, 203, 204, 205, 206, -1, 208, - 209, 210, 211, 212, 213, 214, 215, 216, 217, -1, - 219, -1, 221, 222, 223, 224, 225, 226, 227, 228, - 229, 230, 231, -1, -1, 234, 235, 236, 237, -1, - 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, - 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, - 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, - 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, - 279, 280, 281, 282, 283, 284, 285, 286, -1, 288, - 289, -1, -1, 292, 293, 294, -1, -1, 297, 298, - 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, - 309, 310, 311, 312, 313, 314, -1, -1, -1, -1, - 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, - -1, 330, 331, 332, 333, 334, 335, -1, 337, 338, - 339, 340, 341, 342, 343, 344, 345, 346, -1, 348, - 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, - 359, 360, -1, 362, 363, 364, 365, 366, 367, 368, - 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, - 379, 380, 381, -1, -1, 384, 385, 386, 387, 388, - 389, 390, 391, 392, -1, 394, 395, 396, 397, 398, - -1, 400, 401, 402, 403, 404, 405, 406, 407, 408, - 409, 410, 411, 412, 413, 414, -1, -1, 417, 418, - -1, 420, 421, 422, 423, 424, 425, 426, -1, 428, - 429, 430, -1, -1, 433, 434, 435, 436, 437, 438, - 439, 440, 441, 442, 443, 444, 445, 446, -1, -1, - 449, 450, 451, -1, 453, 454, 455, 456, -1, 458, - 459, 460, 461, 462, 463, 464, 465, -1, 467, 468, - 469, 470, 471, 472, 473, 474, 475, -1, -1, 478, - -1, -1, 481, 482, 483, 484, 485, 486, 487, 488, - 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, - 499, 500, 501, 502, -1, -1, -1, -1, -1, -1, - 509, 510, 511, -1, -1, -1, -1, 516, -1, 518, - -1, -1, -1, -1, -1, 524, 525, 526, 527, 3, - 4, 5, 6, 7, 8, 9, 10, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 22, 23, - 24, 25, 26, 27, 28, 29, -1, 31, 32, 33, - -1, -1, -1, -1, -1, 39, -1, -1, 42, 43, - 44, -1, 46, 47, 48, 49, 50, 51, 52, 53, - 54, 55, 56, 57, -1, 59, 60, 61, 62, 63, - 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, - -1, 75, 76, 77, 78, 79, -1, 81, -1, 83, - 84, 85, 86, 87, 88, 89, 90, 91, 92, -1, - 94, 95, 96, 97, 98, 99, -1, 101, 102, 103, - 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, - 114, 115, 116, 117, 118, -1, 120, 121, 122, 123, - 124, 125, -1, -1, 128, 129, 130, 131, -1, -1, - 134, 135, 136, 137, 138, -1, 140, 141, 142, -1, - 144, 145, 146, -1, 148, 149, 150, 151, 152, 153, - 154, 155, 156, 157, 158, 159, 160, 161, -1, 163, - 164, 165, 166, -1, 168, -1, 170, 171, 172, 173, - 174, 175, 176, 177, 178, -1, 180, -1, 182, 183, - 184, 185, -1, 187, 188, 189, 190, 191, 192, 193, - 194, 195, 196, 197, 198, -1, 200, 201, 202, 203, - 204, 205, 206, -1, 208, 209, 210, 211, 212, 213, - 214, 215, 216, 217, -1, 219, -1, 221, 222, 223, - 224, 225, 226, 227, 228, 229, 230, 231, -1, -1, - 234, 235, 236, 237, -1, 239, 240, 241, 242, 243, - 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, - 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, - 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, - 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, - 284, 285, 286, -1, 288, 289, -1, -1, 292, 293, - 294, -1, -1, 297, 298, 299, 300, 301, 302, 303, - 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, - 314, -1, -1, -1, -1, 319, 320, 321, 322, 323, - 324, 325, 326, 327, 328, -1, 330, 331, 332, 333, - 334, 335, -1, 337, 338, 339, 340, 341, 342, 343, - 344, 345, 346, -1, 348, 349, 350, 351, 352, 353, - 354, 355, 356, 357, 358, 359, 360, -1, 362, 363, - 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, - 374, 375, 376, 377, 378, 379, 380, 381, -1, -1, - 384, 385, 386, 387, 388, 389, 390, 391, 392, -1, - 394, 395, 396, 397, 398, -1, 400, 401, 402, 403, - 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, - 414, -1, -1, 417, 418, -1, 420, 421, 422, 423, - 424, 425, 426, -1, 428, 429, 430, -1, -1, 433, - 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, - 444, 445, 446, -1, -1, 449, 450, 451, -1, 453, - 454, 455, 456, -1, 458, 459, 460, 461, 462, 463, - 464, 465, -1, 467, 468, 469, 470, 471, 472, 473, - 474, 475, -1, -1, 478, -1, -1, 481, 482, 483, - 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, - 494, 495, 496, 497, 498, 499, 500, 501, 502, -1, - -1, -1, -1, -1, -1, 509, 510, 511, -1, -1, - -1, -1, 516, -1, 518, -1, -1, -1, -1, -1, - 524, 525, 526, 527, 3, 4, 5, 6, 7, 8, - 9, 10, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 22, 23, 24, 25, 26, 27, 28, - 29, -1, 31, 32, 33, -1, -1, -1, -1, -1, - 39, -1, -1, 42, 43, 44, -1, 46, 47, 48, - 49, 50, 51, 52, 53, 54, 55, 56, 57, -1, - 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, - 69, 70, 71, 72, 73, -1, 75, 76, 77, 78, - 79, -1, 81, -1, 83, 84, 85, 86, 87, 88, - 89, 90, 91, 92, -1, 94, 95, 96, 97, 98, - 99, -1, 101, 102, 103, 104, 105, 106, 107, 108, - 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, - -1, 120, 121, 122, 123, 124, 125, -1, -1, 128, - 129, 130, 131, -1, -1, 134, 135, 136, 137, 138, - -1, 140, 141, 142, -1, 144, 145, 146, -1, 148, - 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, - 159, 160, 161, -1, 163, 164, 165, 166, -1, 168, - -1, 170, 171, -1, 173, 174, 175, 176, 177, 178, - -1, 180, -1, 182, 183, 184, 185, -1, 187, 188, - 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, - -1, 200, 201, 202, 203, 204, 205, 206, -1, 208, - 209, 210, 211, 212, 213, 214, 215, 216, 217, -1, - 219, -1, 221, 222, 223, 224, 225, 226, 227, 228, - 229, 230, 231, -1, -1, 234, 235, 236, 237, -1, - 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, - 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, - 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, - 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, - 279, 280, 281, 282, 283, 284, 285, 286, -1, 288, - 289, -1, -1, 292, 293, 294, -1, -1, 297, 298, - 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, - 309, 310, 311, 312, 313, 314, -1, -1, -1, -1, - 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, - -1, 330, 331, 332, 333, 334, 335, -1, 337, 338, - 339, 340, 341, 342, 343, 344, 345, 346, -1, 348, - 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, - 359, 360, -1, 362, 363, 364, 365, 366, 367, 368, - 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, - 379, 380, 381, -1, -1, 384, 385, 386, 387, 388, - 389, 390, 391, 392, -1, 394, 395, 396, 397, 398, - -1, 400, 401, 402, 403, 404, 405, 406, 407, 408, - 409, 410, 411, 412, 413, 414, -1, -1, 417, 418, - -1, 420, 421, 422, 423, 424, 425, 426, -1, 428, - 429, 430, -1, -1, 433, 434, 435, 436, 437, 438, - 439, 440, 441, 442, 443, 444, 445, 446, -1, -1, - 449, 450, 451, -1, 453, 454, 455, 456, -1, 458, - 459, 460, 461, 462, 463, 464, 465, -1, 467, 468, - 469, 470, 471, 472, 473, 474, 475, -1, -1, 478, - -1, -1, 481, 482, 483, 484, 485, 486, 487, 488, - 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, - 499, 500, 501, 502, -1, -1, -1, -1, -1, -1, - 509, 510, 511, -1, -1, -1, -1, 516, -1, 518, - 519, -1, -1, -1, -1, 524, 525, 526, 527, 3, - 4, 5, 6, 7, 8, 9, 10, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 22, 23, - 24, 25, 26, 27, 28, 29, -1, 31, 32, 33, - -1, -1, -1, -1, -1, 39, -1, -1, 42, 43, - 44, -1, 46, 47, 48, 49, 50, 51, 52, 53, - 54, 55, 56, 57, -1, 59, 60, 61, 62, 63, - 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, - -1, 75, 76, 77, 78, 79, -1, 81, -1, 83, - 84, 85, 86, 87, 88, 89, 90, 91, 92, -1, - 94, 95, 96, 97, 98, 99, -1, 101, 102, 103, - 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, - 114, 115, 116, 117, 118, -1, 120, 121, 122, 123, - 124, 125, -1, -1, 128, 129, 130, 131, -1, -1, - 134, 135, 136, 137, 138, -1, 140, 141, 142, -1, - 144, 145, 146, -1, 148, 149, 150, 151, 152, 153, - 154, 155, 156, 157, 158, 159, 160, 161, -1, 163, - 164, 165, 166, -1, 168, -1, 170, 171, -1, 173, - 174, 175, 176, 177, 178, -1, 180, -1, 182, 183, - 184, 185, -1, 187, 188, 189, 190, 191, 192, 193, - 194, 195, 196, 197, 198, -1, 200, 201, 202, 203, - 204, 205, 206, -1, 208, 209, 210, 211, 212, 213, - 214, 215, 216, 217, -1, 219, -1, 221, 222, 223, - 224, 225, 226, 227, 228, 229, 230, 231, -1, -1, - 234, 235, 236, 237, -1, 239, 240, 241, 242, 243, - 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, - 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, - 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, - 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, - 284, 285, 286, -1, 288, 289, -1, -1, 292, 293, - 294, -1, -1, 297, 298, 299, 300, 301, 302, 303, - 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, - 314, -1, -1, -1, -1, 319, 320, 321, 322, 323, - 324, 325, 326, 327, 328, -1, 330, 331, 332, 333, - 334, 335, -1, 337, 338, 339, 340, 341, 342, 343, - 344, 345, 346, -1, 348, 349, 350, 351, 352, 353, - 354, 355, 356, 357, 358, 359, 360, -1, 362, 363, - 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, - 374, 375, 376, 377, 378, 379, 380, 381, -1, -1, - 384, 385, 386, 387, 388, 389, 390, 391, 392, -1, - 394, 395, 396, 397, 398, -1, 400, 401, 402, 403, - 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, - 414, -1, -1, 417, 418, -1, 420, 421, 422, 423, - 424, 425, 426, -1, 428, 429, 430, -1, -1, 433, - 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, - 444, 445, 446, -1, -1, 449, 450, 451, -1, 453, - 454, 455, 456, -1, 458, 459, 460, 461, 462, 463, - 464, 465, -1, 467, 468, 469, 470, 471, 472, 473, - 474, 475, -1, -1, 478, -1, -1, 481, 482, 483, - 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, - 494, 495, 496, 497, 498, 499, 500, 501, 502, -1, - -1, -1, -1, -1, -1, 509, 510, 511, -1, -1, - -1, -1, 516, -1, 518, -1, -1, -1, -1, 523, - 524, 525, 526, 527, 3, 4, 5, 6, 7, 8, - 9, 10, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 22, 23, 24, 25, 26, 27, 28, - 29, -1, 31, 32, 33, -1, -1, -1, -1, -1, - 39, -1, -1, 42, 43, 44, -1, 46, 47, 48, - 49, 50, 51, 52, 53, 54, 55, 56, 57, -1, - 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, - 69, 70, 71, 72, 73, -1, 75, 76, 77, 78, - 79, -1, 81, -1, 83, 84, 85, 86, 87, 88, - 89, 90, 91, 92, -1, 94, 95, 96, 97, 98, - 99, -1, 101, 102, 103, 104, 105, 106, 107, 108, - 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, - -1, 120, 121, 122, 123, 124, 125, -1, -1, 128, - 129, 130, 131, -1, -1, 134, 135, 136, 137, 138, - -1, 140, 141, 142, -1, 144, 145, 146, -1, 148, - 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, - 159, 160, 161, -1, 163, 164, 165, 166, -1, 168, - -1, 170, 171, -1, 173, 174, 175, 176, 177, 178, - -1, 180, -1, 182, 183, 184, 185, -1, 187, 188, - 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, - -1, 200, 201, 202, 203, 204, 205, 206, -1, 208, - 209, 210, 211, 212, 213, 214, 215, 216, 217, -1, - 219, -1, 221, 222, 223, 224, 225, 226, 227, 228, - 229, 230, 231, -1, -1, 234, 235, 236, 237, -1, - 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, - 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, - 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, - 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, - 279, 280, 281, 282, 283, 284, 285, 286, -1, 288, - 289, -1, -1, 292, 293, 294, -1, -1, 297, 298, - 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, - 309, 310, 311, 312, 313, 314, -1, -1, -1, -1, - 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, - -1, 330, 331, 332, 333, 334, 335, -1, 337, 338, - 339, 340, 341, 342, 343, 344, 345, 346, -1, 348, - 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, - 359, 360, -1, 362, 363, 364, 365, 366, 367, 368, - 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, - 379, 380, 381, -1, -1, 384, 385, 386, 387, 388, - 389, 390, 391, 392, -1, 394, 395, 396, 397, 398, - -1, 400, 401, 402, 403, 404, 405, 406, 407, 408, - 409, 410, 411, 412, 413, 414, -1, -1, 417, 418, - 419, 420, 421, 422, 423, 424, 425, 426, -1, 428, - 429, 430, -1, -1, 433, 434, 435, 436, 437, 438, - 439, 440, 441, 442, 443, 444, 445, 446, -1, -1, - 449, 450, 451, -1, 453, 454, 455, 456, -1, 458, - 459, 460, 461, 462, 463, 464, 465, -1, 467, 468, - 469, 470, 471, 472, 473, 474, 475, -1, -1, 478, - -1, -1, 481, 482, 483, 484, 485, 486, 487, 488, - 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, - 499, 500, 501, 502, -1, -1, -1, -1, -1, -1, - 509, 510, 511, -1, -1, -1, -1, 516, -1, 518, - -1, -1, -1, -1, -1, 524, 525, 526, 527, 3, - 4, 5, 6, 7, 8, 9, 10, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 22, 23, - 24, 25, 26, 27, 28, 29, -1, 31, 32, 33, - -1, -1, -1, -1, -1, 39, -1, -1, 42, 43, - 44, -1, 46, 47, 48, 49, 50, 51, 52, 53, - 54, 55, 56, 57, -1, 59, 60, 61, 62, 63, - 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, - -1, 75, 76, 77, 78, 79, -1, 81, -1, 83, - 84, 85, 86, 87, 88, 89, 90, 91, 92, -1, - 94, 95, 96, 97, 98, 99, -1, 101, 102, 103, - 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, - 114, 115, 116, 117, 118, -1, 120, 121, 122, 123, - 124, 125, -1, -1, 128, 129, 130, 131, -1, -1, - 134, 135, 136, 137, 138, -1, 140, 141, 142, -1, - 144, 145, 146, -1, 148, 149, 150, 151, 152, 153, - 154, 155, 156, 157, 158, 159, 160, 161, -1, 163, - 164, 165, 166, -1, 168, -1, 170, 171, -1, 173, - 174, 175, 176, 177, 178, -1, 180, -1, 182, 183, - 184, 185, -1, 187, 188, 189, 190, 191, 192, 193, - 194, 195, 196, 197, 198, -1, 200, 201, 202, 203, - 204, 205, 206, -1, 208, 209, 210, 211, 212, 213, - 214, 215, 216, 217, -1, 219, -1, 221, 222, 223, - 224, 225, 226, 227, 228, 229, 230, 231, -1, -1, - 234, 235, 236, 237, -1, 239, 240, 241, 242, 243, - 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, - 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, - 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, - 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, - 284, 285, 286, -1, 288, 289, -1, -1, 292, 293, - 294, -1, -1, 297, 298, 299, 300, 301, 302, 303, - 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, - 314, -1, -1, -1, -1, 319, 320, 321, 322, 323, - 324, 325, 326, 327, 328, -1, 330, 331, 332, 333, - 334, 335, -1, 337, 338, 339, 340, 341, 342, 343, - 344, 345, 346, -1, 348, 349, 350, 351, 352, 353, - 354, 355, 356, 357, 358, 359, 360, -1, 362, 363, - 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, - 374, 375, 376, 377, 378, 379, 380, 381, -1, -1, - 384, 385, 386, 387, 388, 389, 390, 391, 392, -1, - 394, 395, 396, 397, 398, -1, 400, 401, 402, 403, - 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, - 414, -1, -1, 417, 418, -1, 420, 421, 422, 423, - 424, 425, 426, -1, 428, 429, 430, -1, -1, 433, - 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, - 444, 445, 446, -1, -1, 449, 450, 451, -1, 453, - 454, 455, 456, -1, 458, 459, 460, 461, 462, 463, - 464, 465, -1, 467, 468, 469, 470, 471, 472, 473, - 474, 475, -1, 477, 478, -1, -1, 481, 482, 483, - 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, - 494, 495, 496, 497, 498, 499, 500, 501, 502, -1, - -1, -1, -1, -1, -1, 509, 510, 511, -1, -1, - -1, -1, 516, -1, 518, -1, -1, -1, -1, -1, - 524, 525, 526, 527, 3, 4, 5, 6, 7, 8, - 9, 10, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 22, 23, 24, 25, 26, 27, 28, - 29, 30, 31, 32, 33, -1, -1, -1, -1, -1, - 39, -1, -1, 42, 43, 44, -1, 46, 47, 48, - 49, 50, 51, 52, 53, 54, 55, 56, 57, -1, - 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, - 69, 70, 71, 72, 73, -1, 75, 76, 77, 78, - 79, -1, 81, -1, 83, 84, 85, 86, 87, 88, - 89, 90, 91, 92, -1, 94, 95, 96, 97, 98, - 99, -1, 101, 102, 103, 104, 105, 106, 107, 108, - 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, - -1, 120, 121, 122, 123, 124, 125, -1, -1, 128, - 129, 130, 131, -1, -1, 134, 135, 136, 137, 138, - -1, 140, 141, 142, -1, 144, 145, 146, -1, 148, - 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, - 159, 160, 161, -1, 163, 164, 165, 166, -1, 168, - -1, 170, 171, -1, 173, 174, 175, 176, 177, 178, - -1, 180, -1, 182, 183, 184, 185, -1, 187, 188, - 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, - -1, 200, 201, 202, 203, 204, 205, 206, -1, 208, - 209, 210, 211, 212, 213, 214, 215, 216, 217, -1, - 219, -1, 221, 222, 223, 224, 225, 226, 227, 228, - 229, 230, 231, -1, -1, 234, 235, 236, 237, -1, - 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, + 118, 119, 120, 121, 122, 123, 124, 125, 0, 126, + 127, 128, 0, 0, 0, 0, 0, 1062, 0, 0, + 129, 130, 131, 0, 132, 133, 134, 135, 136, 137, + 138, 139, 1063, 141, 1064, 1065, 0, 144, 145, 146, + 147, 148, 149, 1066, 790, 150, 151, 152, 153, 1067, + 1068, 156, 0, 157, 158, 159, 160, 791, 0, 792, + 0, 1069, 164, 165, 166, 167, 168, 169, 170, 171, + 172, 0, 173, 174, 175, 176, 177, 178, 0, 179, + 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, + 1070, 191, 192, 1071, 194, 1072, 195, 0, 196, 197, + 198, 199, 200, 201, 0, 0, 202, 203, 204, 205, + 0, 0, 206, 207, 1073, 209, 210, 0, 211, 212, + 213, 0, 214, 215, 216, 0, 217, 218, 219, 220, + 1074, 222, 223, 224, 225, 226, 227, 793, 1075, 229, + 0, 230, 231, 1076, 233, 0, 234, 0, 235, 236, + 1449, 237, 238, 239, 240, 241, 242, 0, 243, 0, + 1077, 1078, 246, 247, 0, 248, 249, 250, 251, 252, + 253, 254, 255, 256, 257, 258, 259, 0, 260, 261, + 262, 263, 264, 265, 266, 0, 267, 268, 269, 270, + 271, 272, 273, 274, 1079, 1080, 0, 1081, 0, 278, + 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, + 0, 0, 289, 290, 291, 292, 0, 293, 294, 295, + 296, 297, 298, 299, 300, 1082, 302, 303, 304, 305, + 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, + 316, 317, 318, 319, 320, 321, 1083, 323, 1084, 325, + 326, 327, 328, 1085, 329, 330, 331, 332, 1086, 795, + 334, 1087, 336, 337, 338, 0, 339, 340, 0, 0, + 1088, 342, 343, 0, 0, 344, 345, 346, 347, 348, + 349, 797, 351, 352, 353, 354, 355, 356, 357, 358, + 359, 360, 361, 0, 0, 0, 0, 362, 363, 798, + 365, 366, 367, 368, 369, 370, 371, 0, 372, 373, + 374, 375, 376, 377, 0, 378, 379, 380, 381, 382, + 1089, 384, 385, 386, 387, 0, 388, 389, 390, 391, + 392, 393, 394, 395, 396, 397, 398, 399, 400, 0, + 401, 402, 403, 404, 405, 406, 1090, 408, 409, 410, + 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, + 0, 0, 421, 422, 423, 424, 425, 426, 427, 428, + 429, 0, 430, 431, 432, 1091, 434, 0, 435, 436, + 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, + 447, 448, 800, 0, 0, 450, 451, 0, 452, 453, + 454, 455, 456, 457, 458, 0, 459, 1092, 1093, 0, + 0, 462, 463, 801, 465, 802, 1094, 467, 468, 803, + 470, 471, 472, 473, 474, 0, 0, 475, 476, 477, + 0, 478, 479, 480, 481, 0, 482, 483, 484, 485, + 486, 487, 1095, 489, 0, 490, 491, 492, 493, 494, + 495, 496, 497, 498, 0, 0, 499, 0, 0, 500, + 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, + 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, + 1096, 0, 0, 0, 0, 0, 0, 1097, 1098, 1099, + 0, 0, 0, 0, 1100, 0, 1101, 0, 0, 0, + 0, 0, 1102, 1103, 1104, 1105, 117, 1056, 821, 1057, + 1058, 1059, 1060, 1061, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 118, 119, 120, 121, 122, + 123, 124, 125, 0, 126, 127, 128, 0, 0, 0, + 0, 0, 1062, 0, 0, 129, 130, 131, 0, 132, + 133, 134, 135, 136, 137, 138, 139, 1063, 141, 1064, + 1065, 0, 144, 145, 146, 147, 148, 149, 1066, 790, + 150, 151, 152, 153, 1067, 1068, 156, 0, 157, 158, + 159, 160, 791, 0, 792, 0, 1069, 164, 165, 166, + 167, 168, 169, 170, 171, 172, 0, 173, 174, 175, + 176, 177, 178, 0, 179, 180, 181, 182, 183, 184, + 185, 186, 187, 188, 189, 1070, 191, 192, 1071, 194, + 1072, 195, 0, 196, 197, 198, 199, 200, 201, 0, + 0, 202, 203, 204, 205, 0, 0, 206, 207, 1073, + 209, 210, 0, 211, 212, 213, 0, 214, 215, 216, + 0, 217, 218, 219, 220, 1074, 222, 223, 224, 225, + 226, 227, 793, 1075, 229, 0, 230, 231, 1076, 233, + 0, 234, 0, 235, 236, 0, 237, 238, 239, 240, + 241, 242, 0, 243, 0, 1077, 1078, 246, 247, 0, + 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, + 258, 259, 0, 260, 261, 262, 263, 264, 265, 266, + 0, 267, 268, 269, 270, 271, 272, 273, 274, 1079, + 1080, 0, 1081, 0, 278, 279, 280, 281, 282, 283, + 284, 285, 286, 287, 288, 0, 0, 289, 290, 291, + 292, 0, 293, 294, 295, 296, 297, 298, 299, 300, + 1082, 302, 303, 304, 305, 306, 307, 308, 309, 310, + 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, + 321, 1083, 323, 1084, 325, 326, 327, 328, 1085, 329, + 330, 331, 332, 1086, 795, 334, 1087, 336, 337, 338, + 0, 339, 340, 0, 0, 1088, 342, 343, 0, 0, + 344, 345, 346, 347, 348, 349, 797, 351, 352, 353, + 354, 355, 356, 357, 358, 359, 360, 361, 0, 0, + 0, 0, 362, 363, 798, 365, 366, 367, 368, 369, + 370, 371, 0, 372, 373, 374, 375, 376, 377, 0, + 378, 379, 380, 381, 382, 1089, 384, 385, 386, 387, + 0, 388, 389, 390, 391, 392, 393, 394, 395, 396, + 397, 398, 399, 400, 0, 401, 402, 403, 404, 405, + 406, 1090, 408, 409, 410, 411, 412, 413, 414, 415, + 416, 417, 418, 419, 420, 0, 0, 421, 422, 423, + 424, 425, 426, 427, 428, 429, 0, 430, 431, 432, + 1091, 434, 0, 435, 436, 437, 438, 439, 440, 441, + 442, 443, 444, 445, 446, 447, 448, 800, 0, 0, + 450, 451, 0, 452, 453, 454, 455, 456, 457, 458, + 0, 459, 1092, 1093, 0, 0, 462, 463, 801, 465, + 802, 1094, 467, 468, 803, 470, 471, 472, 473, 474, + 0, 0, 475, 476, 477, 0, 478, 479, 480, 481, + 0, 482, 483, 484, 485, 486, 487, 1095, 489, 0, + 490, 491, 492, 493, 494, 495, 496, 497, 498, 0, + 0, 499, 0, 0, 500, 501, 502, 503, 504, 505, + 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, + 516, 517, 518, 519, 520, 1096, 0, 0, 0, 0, + 0, 0, 1097, 1098, 1099, 0, 0, 0, 0, 1100, + 0, 1101, 2094, 0, 0, 0, 0, 1102, 1103, 1104, + 1105, 117, 1056, 821, 1057, 1058, 1059, 1060, 1061, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 118, 119, 120, 121, 122, 123, 124, 125, 0, 126, + 127, 128, 0, 0, 0, 0, 0, 1062, 0, 0, + 129, 130, 131, 0, 132, 133, 134, 135, 136, 137, + 138, 139, 1063, 141, 1064, 1065, 0, 144, 145, 146, + 147, 148, 149, 1066, 790, 150, 151, 152, 153, 1067, + 1068, 156, 0, 157, 158, 159, 160, 791, 0, 792, + 0, 1069, 164, 165, 166, 167, 168, 169, 170, 171, + 172, 0, 173, 174, 175, 176, 177, 178, 0, 179, + 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, + 1070, 191, 192, 1071, 194, 1072, 195, 0, 196, 197, + 198, 199, 200, 201, 0, 0, 202, 203, 204, 205, + 0, 0, 206, 207, 1073, 209, 210, 0, 211, 212, + 213, 0, 214, 215, 216, 0, 217, 218, 219, 220, + 1074, 222, 223, 224, 225, 226, 227, 793, 1075, 229, + 0, 230, 231, 1076, 233, 0, 234, 0, 235, 236, + 0, 237, 238, 239, 240, 241, 242, 0, 243, 0, + 1077, 1078, 246, 247, 0, 248, 249, 250, 251, 252, + 253, 254, 255, 256, 257, 258, 259, 0, 260, 261, + 262, 263, 264, 265, 266, 0, 267, 268, 269, 270, + 271, 272, 273, 274, 1079, 1080, 0, 1081, 0, 278, + 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, + 0, 0, 289, 290, 291, 292, 0, 293, 294, 295, + 296, 297, 298, 299, 300, 1082, 302, 303, 304, 305, + 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, + 316, 317, 318, 319, 320, 321, 1083, 323, 1084, 325, + 326, 327, 328, 1085, 329, 330, 331, 332, 1086, 795, + 334, 1087, 336, 337, 338, 0, 339, 340, 0, 0, + 1088, 342, 343, 0, 0, 344, 345, 346, 347, 348, + 349, 797, 351, 352, 353, 354, 355, 356, 357, 358, + 359, 360, 361, 0, 0, 0, 0, 362, 363, 798, + 365, 366, 367, 368, 369, 370, 371, 0, 372, 373, + 374, 375, 376, 377, 0, 378, 379, 380, 381, 382, + 1089, 384, 385, 386, 387, 0, 388, 389, 390, 391, + 392, 393, 394, 395, 396, 397, 398, 399, 400, 0, + 401, 402, 403, 404, 405, 406, 1090, 408, 409, 410, + 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, + 0, 0, 421, 422, 423, 424, 425, 426, 427, 428, + 429, 0, 430, 431, 432, 1091, 434, 0, 435, 436, + 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, + 447, 448, 800, 0, 0, 450, 451, 0, 452, 453, + 454, 455, 456, 457, 458, 0, 459, 1092, 1093, 0, + 0, 462, 463, 801, 465, 802, 1094, 467, 468, 803, + 470, 471, 472, 473, 474, 0, 0, 475, 476, 477, + 0, 478, 479, 480, 481, 0, 482, 483, 484, 485, + 486, 487, 1095, 489, 0, 490, 491, 492, 493, 494, + 495, 496, 497, 498, 0, 0, 499, 0, 0, 500, + 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, + 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, + 1096, 0, 0, 0, 0, 0, 0, 1097, 1098, 1099, + 0, 0, 0, 0, 1100, 0, 1101, 0, 0, 0, + 0, 2692, 1102, 1103, 1104, 1105, 117, 1056, 821, 1057, + 1058, 1059, 1060, 1061, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 118, 119, 120, 121, 122, + 123, 124, 125, 0, 126, 127, 128, 0, 0, 0, + 0, 0, 1062, 0, 0, 129, 130, 131, 0, 132, + 133, 134, 135, 136, 137, 138, 139, 1063, 141, 1064, + 1065, 0, 144, 145, 146, 147, 148, 149, 1066, 790, + 150, 151, 152, 153, 1067, 1068, 156, 0, 157, 158, + 159, 160, 791, 0, 792, 0, 1069, 164, 165, 166, + 167, 168, 169, 170, 171, 172, 0, 173, 174, 175, + 176, 177, 178, 0, 179, 180, 181, 182, 183, 184, + 185, 186, 187, 188, 189, 1070, 191, 192, 1071, 194, + 1072, 195, 0, 196, 197, 198, 199, 200, 201, 0, + 0, 202, 203, 204, 205, 0, 0, 206, 207, 1073, + 209, 210, 0, 211, 212, 213, 0, 214, 215, 216, + 0, 217, 218, 219, 220, 1074, 222, 223, 224, 225, + 226, 227, 793, 1075, 229, 0, 230, 231, 1076, 233, + 0, 234, 0, 235, 236, 0, 237, 238, 239, 240, + 241, 242, 0, 243, 0, 1077, 1078, 246, 247, 0, + 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, + 258, 259, 0, 260, 261, 262, 263, 264, 265, 266, + 0, 267, 268, 269, 270, 271, 272, 273, 274, 1079, + 1080, 0, 1081, 0, 278, 279, 280, 281, 282, 283, + 284, 285, 286, 287, 288, 0, 0, 289, 290, 291, + 292, 0, 293, 294, 295, 296, 297, 298, 299, 300, + 1082, 302, 303, 304, 305, 306, 307, 308, 309, 310, + 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, + 321, 1083, 323, 1084, 325, 326, 327, 328, 1085, 329, + 330, 331, 332, 1086, 795, 334, 1087, 336, 337, 338, + 0, 339, 340, 0, 0, 1088, 342, 343, 0, 0, + 344, 345, 346, 347, 348, 349, 797, 351, 352, 353, + 354, 355, 356, 357, 358, 359, 360, 361, 0, 0, + 0, 0, 362, 363, 798, 365, 366, 367, 368, 369, + 370, 371, 0, 372, 373, 374, 375, 376, 377, 0, + 378, 379, 380, 381, 382, 1089, 384, 385, 386, 387, + 0, 388, 389, 390, 391, 392, 393, 394, 395, 396, + 397, 398, 399, 400, 0, 401, 402, 403, 404, 405, + 406, 1090, 408, 409, 410, 411, 412, 413, 414, 415, + 416, 417, 418, 419, 420, 0, 0, 421, 422, 423, + 424, 425, 426, 427, 428, 429, 0, 430, 431, 432, + 1091, 434, 0, 435, 436, 437, 438, 439, 440, 441, + 442, 443, 444, 445, 446, 447, 448, 800, 0, 0, + 450, 451, 2751, 452, 453, 454, 455, 456, 457, 458, + 0, 459, 1092, 1093, 0, 0, 462, 463, 801, 465, + 802, 1094, 467, 468, 803, 470, 471, 472, 473, 474, + 0, 0, 475, 476, 477, 0, 478, 479, 480, 481, + 0, 482, 483, 484, 485, 486, 487, 1095, 489, 0, + 490, 491, 492, 493, 494, 495, 496, 497, 498, 0, + 0, 499, 0, 0, 500, 501, 502, 503, 504, 505, + 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, + 516, 517, 518, 519, 520, 1096, 0, 0, 0, 0, + 0, 0, 1097, 1098, 1099, 0, 0, 0, 0, 1100, + 0, 1101, 0, 0, 0, 0, 0, 1102, 1103, 1104, + 1105, 117, 1056, 821, 1057, 1058, 1059, 1060, 1061, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 118, 119, 120, 121, 122, 123, 124, 125, 0, 126, + 127, 128, 0, 0, 0, 0, 0, 1062, 0, 0, + 129, 130, 131, 0, 132, 133, 134, 135, 136, 137, + 138, 139, 1063, 141, 1064, 1065, 0, 144, 145, 146, + 147, 148, 149, 1066, 790, 150, 151, 152, 153, 1067, + 1068, 156, 0, 157, 158, 159, 160, 791, 0, 792, + 0, 1069, 164, 165, 166, 167, 168, 169, 170, 171, + 172, 0, 173, 174, 175, 176, 177, 178, 0, 179, + 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, + 1070, 191, 192, 1071, 194, 1072, 195, 0, 196, 197, + 198, 199, 200, 201, 0, 0, 202, 203, 204, 205, + 0, 0, 206, 207, 1073, 209, 210, 0, 211, 212, + 213, 0, 214, 215, 216, 0, 217, 218, 219, 220, + 1074, 222, 223, 224, 225, 226, 227, 793, 1075, 229, + 0, 230, 231, 1076, 233, 0, 234, 0, 235, 236, + 0, 237, 238, 239, 240, 241, 242, 0, 243, 0, + 1077, 1078, 246, 247, 0, 248, 249, 250, 251, 252, + 253, 254, 255, 256, 257, 258, 259, 0, 260, 261, + 262, 263, 264, 265, 266, 0, 267, 268, 269, 270, + 271, 272, 273, 274, 1079, 1080, 0, 1081, 0, 278, + 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, + 0, 0, 289, 290, 291, 292, 0, 293, 294, 295, + 296, 297, 298, 299, 300, 1082, 302, 303, 304, 305, + 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, + 316, 317, 318, 319, 320, 321, 1083, 323, 1084, 325, + 326, 327, 328, 1085, 329, 330, 331, 332, 1086, 795, + 334, 1087, 336, 337, 338, 0, 339, 340, 0, 0, + 1088, 342, 343, 0, 0, 344, 345, 346, 347, 348, + 349, 797, 351, 352, 353, 354, 355, 356, 357, 358, + 359, 360, 361, 0, 0, 0, 0, 362, 363, 798, + 365, 366, 367, 368, 369, 370, 371, 0, 372, 373, + 374, 375, 376, 377, 0, 378, 379, 380, 381, 382, + 1089, 384, 385, 386, 387, 0, 388, 389, 390, 391, + 392, 393, 394, 395, 396, 397, 398, 399, 400, 0, + 401, 402, 403, 404, 405, 406, 1090, 408, 409, 410, + 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, + 0, 0, 421, 422, 423, 424, 425, 426, 427, 428, + 429, 0, 430, 431, 432, 1091, 434, 0, 435, 436, + 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, + 447, 448, 800, 0, 0, 450, 451, 0, 452, 453, + 454, 455, 456, 457, 458, 0, 459, 1092, 1093, 0, + 0, 462, 463, 801, 465, 802, 1094, 467, 468, 803, + 470, 471, 472, 473, 474, 0, 0, 475, 476, 477, + 0, 478, 479, 480, 481, 0, 482, 483, 484, 485, + 486, 487, 1095, 489, 0, 490, 491, 492, 493, 494, + 495, 496, 497, 498, 0, 2877, 499, 0, 0, 500, + 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, + 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, + 1096, 0, 0, 0, 0, 0, 0, 1097, 1098, 1099, + 0, 0, 0, 0, 1100, 0, 1101, 0, 0, 0, + 0, 0, 1102, 1103, 1104, 1105, 117, 1056, 821, 1057, + 1058, 1059, 1060, 1061, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 118, 119, 120, 121, 122, + 123, 124, 125, 3095, 126, 127, 128, 0, 0, 0, + 0, 0, 1062, 0, 0, 129, 130, 131, 0, 132, + 133, 134, 135, 136, 137, 138, 139, 1063, 141, 1064, + 1065, 0, 144, 145, 146, 147, 148, 149, 1066, 790, + 150, 151, 152, 153, 1067, 1068, 156, 0, 157, 158, + 159, 160, 791, 0, 792, 0, 1069, 164, 165, 166, + 167, 168, 169, 170, 171, 172, 0, 173, 174, 175, + 176, 177, 178, 0, 179, 180, 3096, 182, 183, 184, + 185, 186, 187, 188, 189, 1070, 191, 192, 1071, 194, + 1072, 195, 0, 196, 197, 198, 199, 200, 201, 0, + 0, 202, 203, 204, 205, 0, 0, 206, 207, 1073, + 209, 210, 0, 211, 212, 213, 0, 214, 215, 216, + 0, 217, 218, 219, 220, 1074, 222, 223, 224, 225, + 226, 227, 793, 1075, 229, 0, 230, 231, 1076, 233, + 0, 234, 0, 235, 236, 0, 237, 238, 239, 240, + 241, 242, 0, 243, 0, 3097, 1078, 246, 247, 0, + 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, + 258, 259, 0, 260, 261, 262, 263, 264, 265, 266, + 0, 267, 268, 269, 270, 271, 272, 273, 274, 1079, + 1080, 0, 1081, 0, 278, 279, 280, 281, 282, 283, + 284, 285, 286, 287, 288, 0, 0, 289, 290, 291, + 292, 0, 293, 294, 295, 296, 297, 298, 299, 300, + 1082, 302, 303, 304, 305, 306, 307, 308, 309, 310, + 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, + 321, 1083, 323, 1084, 325, 326, 327, 328, 1085, 329, + 330, 331, 332, 1086, 795, 334, 1087, 336, 337, 338, + 0, 339, 340, 0, 0, 1088, 342, 343, 0, 0, + 344, 345, 346, 347, 348, 349, 797, 351, 352, 353, + 354, 355, 356, 357, 358, 359, 360, 361, 0, 0, + 0, 0, 362, 363, 798, 365, 366, 367, 368, 369, + 370, 371, 0, 372, 373, 374, 375, 376, 377, 0, + 378, 379, 380, 381, 382, 1089, 384, 385, 386, 387, + 0, 388, 389, 390, 391, 392, 393, 394, 395, 396, + 397, 398, 399, 400, 0, 401, 402, 403, 404, 405, + 3098, 1090, 408, 409, 410, 411, 412, 413, 414, 415, + 416, 417, 418, 419, 420, 0, 0, 421, 422, 423, + 424, 425, 426, 427, 428, 429, 0, 430, 431, 432, + 1091, 434, 0, 435, 436, 437, 438, 439, 440, 441, + 442, 443, 444, 445, 446, 447, 448, 800, 0, 0, + 450, 451, 0, 452, 453, 454, 455, 456, 457, 458, + 0, 459, 1092, 1093, 0, 0, 462, 463, 801, 465, + 802, 1094, 467, 468, 803, 470, 471, 472, 473, 474, + 0, 0, 475, 476, 477, 0, 478, 479, 480, 481, + 0, 482, 483, 484, 485, 486, 487, 1095, 489, 0, + 490, 491, 492, 493, 494, 495, 496, 497, 498, 0, + 0, 499, 0, 0, 500, 501, 502, 503, 504, 505, + 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, + 516, 517, 518, 519, 520, 1096, 0, 0, 0, 0, + 0, 0, 1097, 1098, 1099, 0, 0, 0, 0, 1100, + 0, 3099, 0, 0, 0, 0, 0, 1102, 1103, 1104, + 1105, 117, 1056, 821, 1057, 1058, 1059, 1060, 1061, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 118, 119, 120, 121, 122, 123, 124, 125, 0, 126, + 127, 128, 0, 0, 0, 0, 0, 1062, 0, 0, + 129, 130, 131, 0, 132, 133, 134, 135, 136, 137, + 138, 139, 1063, 141, 1064, 1065, 0, 144, 145, 146, + 147, 148, 149, 1066, 790, 150, 151, 152, 153, 1067, + 1068, 156, 0, 157, 158, 159, 160, 791, 0, 792, + 0, 1069, 164, 165, 166, 167, 168, 169, 170, 171, + 172, 0, 173, 174, 175, 176, 177, 178, 0, 179, + 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, + 1070, 191, 192, 1071, 194, 1072, 195, 0, 196, 197, + 198, 199, 200, 201, 0, 0, 202, 203, 204, 205, + 0, 0, 206, 207, 1073, 209, 210, 0, 211, 212, + 213, 0, 214, 215, 216, 0, 217, 218, 219, 220, + 1074, 222, 223, 224, 225, 226, 227, 793, 1075, 229, + 0, 230, 231, 1076, 233, 0, 234, 0, 235, 236, + 0, 237, 238, 239, 240, 241, 242, 0, 243, 0, + 1077, 1078, 246, 247, 0, 248, 249, 250, 251, 252, + 253, 254, 255, 256, 257, 258, 259, 0, 260, 261, + 262, 263, 264, 265, 266, 0, 267, 268, 269, 270, + 271, 272, 273, 274, 1079, 1080, 0, 1081, 0, 278, + 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, + 0, 0, 289, 290, 291, 292, 0, 293, 294, 295, + 296, 297, 298, 299, 300, 1082, 302, 303, 304, 305, + 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, + 316, 317, 318, 319, 320, 321, 1083, 323, 1084, 325, + 326, 327, 328, 1085, 329, 330, 331, 332, 1086, 795, + 334, 1087, 336, 337, 338, 0, 339, 340, 0, 0, + 1088, 342, 343, 0, 0, 344, 345, 346, 347, 348, + 349, 797, 351, 352, 353, 354, 355, 356, 357, 358, + 359, 360, 361, 0, 0, 0, 0, 362, 363, 798, + 365, 366, 367, 368, 369, 370, 371, 0, 372, 373, + 374, 375, 376, 377, 0, 378, 379, 380, 381, 382, + 1089, 384, 385, 386, 387, 0, 388, 389, 390, 391, + 392, 393, 394, 395, 396, 397, 398, 399, 400, 0, + 401, 402, 403, 404, 405, 406, 1090, 408, 409, 410, + 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, + 0, 0, 421, 422, 423, 424, 425, 426, 427, 428, + 429, 0, 430, 431, 432, 1091, 434, 0, 435, 436, + 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, + 447, 448, 800, 0, 0, 450, 451, 0, 452, 453, + 454, 455, 456, 457, 458, 0, 459, 1092, 1093, 0, + 0, 462, 463, 801, 465, 802, 1094, 467, 468, 803, + 470, 471, 472, 473, 474, 0, 0, 475, 476, 477, + 0, 478, 479, 480, 481, 0, 482, 483, 484, 485, + 486, 487, 1095, 489, 0, 490, 491, 492, 493, 494, + 495, 496, 497, 498, 0, 0, 499, 0, 0, 500, + 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, + 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, + 1096, 0, 0, 0, 0, 0, 0, 1097, 1098, 1099, + 0, 0, 0, 0, 1100, 0, 1101, 0, 0, 0, + 0, 3320, 1102, 1103, 1104, 1105, 117, 1056, 821, 1057, + 1058, 1059, 1060, 1061, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 118, 119, 120, 121, 122, + 123, 124, 125, 0, 126, 127, 128, 0, 0, 0, + 0, 0, 1062, 0, 0, 129, 130, 131, 0, 132, + 133, 134, 135, 136, 137, 138, 139, 1063, 141, 1064, + 1065, 0, 144, 145, 146, 147, 148, 149, 1066, 790, + 150, 151, 152, 153, 1067, 1068, 156, 0, 157, 158, + 159, 160, 791, 0, 792, 0, 1069, 164, 165, 166, + 167, 168, 169, 170, 171, 172, 0, 173, 174, 175, + 176, 177, 178, 0, 179, 180, 181, 182, 183, 184, + 185, 186, 187, 188, 189, 1070, 191, 192, 1071, 194, + 1072, 195, 0, 196, 197, 198, 199, 200, 201, 0, + 0, 202, 203, 204, 205, 0, 0, 206, 207, 1073, + 209, 210, 0, 211, 212, 213, 0, 214, 215, 216, + 0, 217, 218, 219, 220, 1074, 222, 223, 224, 225, + 226, 227, 793, 1075, 229, 0, 230, 231, 1076, 233, + 0, 234, 0, 235, 236, 0, 237, 238, 239, 240, + 241, 242, 0, 243, 0, 1077, 1078, 246, 247, 0, + 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, + 258, 259, 0, 260, 261, 262, 263, 264, 265, 266, + 0, 267, 268, 269, 270, 271, 272, 273, 274, 1079, + 1080, 0, 1081, 0, 278, 279, 280, 281, 282, 283, + 284, 285, 286, 287, 288, 0, 0, 289, 290, 291, + 292, 0, 293, 294, 295, 296, 297, 298, 299, 300, + 1082, 302, 303, 304, 305, 306, 307, 308, 309, 310, + 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, + 321, 1083, 323, 1084, 325, 326, 327, 328, 1085, 329, + 330, 331, 332, 1086, 795, 334, 1087, 336, 337, 338, + 0, 339, 340, 0, 0, 1088, 342, 343, 0, 0, + 344, 345, 346, 347, 348, 349, 797, 351, 352, 353, + 354, 355, 356, 357, 358, 359, 360, 361, 0, 0, + 0, 0, 362, 363, 798, 365, 366, 367, 368, 369, + 370, 371, 0, 372, 373, 374, 375, 376, 377, 0, + 378, 379, 380, 381, 382, 1089, 384, 385, 386, 387, + 0, 388, 389, 390, 391, 392, 393, 394, 395, 396, + 397, 398, 399, 400, 0, 401, 402, 403, 404, 405, + 406, 1090, 408, 409, 410, 411, 412, 413, 414, 415, + 416, 417, 418, 419, 420, 0, 0, 421, 422, 423, + 424, 425, 426, 427, 428, 429, 0, 430, 431, 432, + 1091, 434, 0, 435, 436, 437, 438, 439, 440, 441, + 442, 443, 444, 445, 446, 447, 448, 800, 0, 0, + 450, 451, 0, 452, 453, 454, 455, 456, 457, 458, + 0, 459, 1092, 1093, 0, 0, 462, 463, 801, 465, + 802, 1094, 467, 468, 803, 470, 471, 472, 473, 474, + 0, 0, 475, 476, 477, 0, 478, 479, 480, 481, + 0, 482, 483, 484, 485, 486, 487, 1095, 489, 0, + 490, 491, 492, 493, 494, 495, 496, 497, 498, 0, + 0, 499, 0, 0, 500, 501, 502, 503, 504, 505, + 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, + 516, 517, 518, 519, 520, 1096, 0, 0, 0, 0, + 0, 0, 1097, 1098, 1099, 0, 0, 0, 0, 1100, + 0, 1101, 0, 0, 0, 0, 0, 1102, 1103, 1104, + 1105, 117, 1056, 821, 1057, 1058, 1059, 1060, 1061, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 118, 119, 120, 121, 122, 123, 124, 125, 0, 126, + 127, 128, 0, 0, 0, 0, 0, 1062, 0, 0, + 129, 130, 131, 0, 132, 133, 134, 135, 136, 137, + 138, 139, 1063, 141, 1064, 1065, 0, 144, 145, 146, + 147, 148, 149, 1066, 790, 150, 151, 152, 153, 1067, + 1068, 156, 0, 157, 158, 159, 160, 791, 0, 792, + 0, 1069, 164, 165, 166, 167, 168, 169, 170, 171, + 172, 0, 173, 174, 175, 176, 177, 178, 0, 179, + 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, + 1070, 191, 192, 1071, 194, 1072, 195, 0, 196, 197, + 198, 199, 200, 201, 0, 0, 202, 203, 204, 205, + 0, 0, 206, 207, 1073, 209, 210, 0, 211, 212, + 213, 0, 214, 215, 216, 0, 217, 218, 219, 220, + 1074, 222, 223, 224, 225, 226, 227, 793, 1075, 229, + 0, 230, 231, 1076, 233, 0, 234, 0, 235, 236, + 0, 237, 238, 239, 240, 241, 242, 0, 243, 0, + 1077, 1078, 246, 247, 0, 248, 249, 250, 251, 252, + 253, 254, 255, 256, 257, 258, 259, 0, 260, 261, + 262, 263, 264, 265, 266, 0, 267, 268, 269, 270, + 271, 272, 273, 274, 1079, 1080, 0, 1081, 0, 278, + 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, + 0, 0, 289, 290, 291, 292, 0, 293, 294, 295, + 296, 297, 298, 299, 300, 1082, 302, 303, 304, 305, + 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, + 316, 317, 318, 319, 320, 321, 1083, 323, 1084, 325, + 326, 327, 328, 1085, 329, 330, 331, 332, 1086, 795, + 334, 1087, 336, 337, 338, 0, 339, 340, 0, 0, + 1088, 342, 343, 0, 0, 344, 345, 346, 347, 348, + 349, 797, 351, 352, 353, 354, 355, 356, 357, 358, + 359, 360, 361, 0, 0, 0, 0, 362, 363, 798, + 365, 366, 367, 368, 369, 370, 371, 0, 372, 373, + 374, 375, 376, 377, 0, 378, 379, 380, 381, 382, + 1089, 384, 385, 386, 387, 0, 388, 389, 390, 391, + 392, 393, 394, 395, 396, 397, 398, 399, 400, 0, + 401, 402, 403, 404, 405, 406, 1090, 408, 409, 410, + 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, + 0, 0, 421, 422, 423, 424, 425, 426, 427, 428, + 429, 0, 430, 431, 432, 1091, 434, 0, 435, 436, + 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, + 447, 448, 800, 0, 0, 450, 451, 0, 452, 453, + 454, 455, 456, 457, 458, 0, 459, 1092, 1093, 0, + 0, 462, 463, 801, 465, 802, 1094, 467, 468, 803, + 470, 471, 472, 473, 474, 0, 0, 475, 476, 477, + 0, 478, 479, 480, 481, 0, 482, 483, 484, 485, + 486, 487, 1095, 489, 0, 490, 491, 492, 493, 494, + 495, 496, 497, 498, 0, 0, 499, 0, 0, 500, + 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, + 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, + 1096, 0, 0, 0, 0, 0, 0, 1737, 1738, 1099, + 0, 0, 0, 0, 1100, 0, 1101, 0, 0, 0, + 0, 0, 1102, 1103, 1104, 1105, 117, 2236, 821, 1057, + 1058, 1059, 1060, 1061, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 118, 119, 120, 121, 122, + 123, 124, 125, 0, 126, 127, 128, 0, 0, 0, + 0, 0, 1062, 0, 0, 129, 130, 131, 0, 132, + 133, 134, 135, 136, 137, 138, 139, 1063, 141, 1064, + 1065, 0, 144, 145, 146, 147, 148, 149, 1066, 790, + 150, 151, 152, 153, 1067, 1068, 156, 0, 157, 158, + 159, 160, 791, 0, 792, 0, 1069, 164, 165, 166, + 167, 168, 169, 170, 171, 172, 0, 173, 174, 175, + 176, 177, 178, 0, 179, 180, 181, 182, 183, 184, + 185, 186, 187, 188, 189, 1070, 191, 192, 1071, 194, + 1072, 195, 0, 196, 197, 198, 199, 200, 201, 0, + 0, 202, 203, 204, 205, 0, 0, 206, 207, 1073, + 209, 210, 0, 211, 212, 213, 0, 214, 215, 216, + 0, 217, 218, 219, 220, 1074, 222, 223, 224, 225, + 226, 227, 793, 1075, 229, 0, 230, 231, 1076, 233, + 0, 234, 0, 235, 236, 0, 237, 238, 239, 240, + 241, 242, 0, 243, 0, 1077, 1078, 246, 247, 0, + 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, + 258, 259, 0, 260, 261, 262, 263, 264, 265, 266, + 0, 267, 268, 269, 270, 271, 272, 273, 274, 1079, + 1080, 0, 1081, 0, 278, 279, 280, 281, 282, 283, + 284, 285, 286, 287, 288, 0, 0, 289, 290, 291, + 292, 0, 293, 294, 295, 296, 297, 298, 299, 300, + 1082, 302, 303, 304, 305, 306, 307, 308, 309, 310, + 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, + 321, 1083, 323, 1084, 325, 326, 327, 328, 1085, 329, + 330, 331, 332, 1086, 795, 334, 1087, 336, 337, 338, + 0, 339, 340, 0, 0, 1088, 342, 343, 0, 0, + 344, 345, 346, 347, 348, 349, 797, 351, 352, 353, + 354, 355, 356, 357, 358, 359, 360, 361, 0, 0, + 0, 0, 362, 363, 798, 365, 366, 367, 368, 369, + 370, 371, 0, 372, 373, 374, 375, 376, 377, 0, + 378, 379, 380, 381, 382, 1089, 384, 385, 386, 387, + 0, 388, 389, 390, 391, 392, 393, 394, 395, 396, + 397, 398, 399, 400, 0, 401, 402, 403, 404, 405, + 406, 1090, 408, 409, 410, 411, 412, 413, 414, 415, + 416, 417, 418, 419, 420, 0, 0, 421, 422, 423, + 424, 425, 426, 427, 428, 429, 0, 430, 431, 432, + 1091, 434, 0, 435, 436, 437, 438, 439, 440, 441, + 442, 443, 444, 445, 446, 447, 448, 800, 0, 0, + 450, 451, 0, 452, 453, 454, 455, 456, 457, 458, + 0, 459, 1092, 1093, 0, 0, 462, 463, 801, 465, + 802, 1094, 467, 468, 803, 470, 471, 472, 473, 474, + 0, 0, 475, 476, 477, 0, 478, 479, 480, 481, + 0, 482, 483, 484, 485, 486, 487, 1095, 489, 0, + 490, 491, 492, 493, 494, 495, 496, 497, 498, 0, + 0, 499, 0, 0, 500, 501, 502, 503, 504, 505, + 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, + 516, 517, 518, 519, 520, 1096, 0, 0, 0, 0, + 0, 0, 1097, 1098, 1099, 0, 0, 0, 0, 1100, + 0, 1101, 0, 0, 0, 0, 0, 1102, 1103, 1104, + 1105, 117, 1056, 821, 1057, 1058, 1059, 1060, 1061, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 118, 119, 120, 121, 122, 123, 124, 125, 0, 126, + 127, 128, 0, 0, 0, 0, 0, 1062, 0, 0, + 129, 130, 131, 0, 132, 133, 134, 135, 136, 137, + 138, 139, 1063, 141, 1064, 1065, 0, 144, 145, 146, + 147, 148, 149, 1066, 790, 150, 151, 152, 153, 1067, + 1068, 156, 0, 157, 158, 159, 160, 791, 0, 792, + 0, 1069, 164, 165, 166, 167, 168, 169, 170, 171, + 172, 0, 173, 174, 175, 176, 177, 178, 0, 179, + 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, + 1070, 191, 192, 1071, 194, 1072, 195, 0, 196, 197, + 198, 199, 200, 201, 0, 0, 202, 203, 204, 205, + 0, 0, 206, 207, 1073, 209, 210, 0, 211, 212, + 213, 0, 214, 215, 216, 0, 217, 218, 219, 220, + 1074, 222, 223, 224, 225, 226, 227, 793, 1075, 229, + 0, 230, 231, 1076, 233, 0, 234, 0, 235, 236, + 0, 237, 238, 239, 240, 241, 242, 0, 243, 0, + 1077, 1078, 246, 247, 0, 248, 249, 250, 251, 252, + 253, 254, 255, 256, 257, 258, 259, 0, 260, 261, + 262, 263, 264, 265, 266, 0, 267, 268, 269, 270, + 271, 272, 273, 274, 1079, 1080, 0, 1081, 0, 278, + 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, + 0, 0, 289, 290, 291, 292, 0, 293, 294, 295, + 296, 297, 298, 299, 300, 1082, 302, 303, 304, 305, + 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, + 316, 317, 318, 319, 320, 321, 1083, 323, 1084, 325, + 326, 327, 328, 1085, 329, 330, 331, 332, 1086, 795, + 334, 1087, 336, 337, 338, 0, 339, 340, 0, 0, + 1088, 342, 343, 0, 0, 344, 345, 346, 347, 348, + 349, 797, 351, 352, 353, 354, 355, 356, 357, 358, + 359, 360, 361, 0, 0, 0, 0, 362, 363, 798, + 365, 366, 367, 368, 369, 370, 371, 0, 372, 373, + 374, 375, 376, 377, 0, 378, 379, 380, 381, 382, + 1089, 384, 385, 386, 387, 0, 388, 389, 390, 391, + 392, 393, 394, 395, 396, 397, 398, 399, 400, 0, + 401, 402, 403, 404, 405, 406, 1090, 408, 409, 410, + 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, + 0, 0, 421, 422, 423, 424, 425, 426, 427, 428, + 429, 0, 430, 431, 432, 1091, 434, 0, 435, 436, + 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, + 447, 448, 800, 0, 0, 450, 451, 0, 452, 453, + 454, 455, 456, 457, 458, 0, 459, 1092, 1093, 0, + 0, 462, 463, 801, 465, 802, 1094, 467, 468, 803, + 470, 471, 472, 473, 474, 0, 0, 475, 476, 477, + 0, 478, 479, 480, 481, 0, 482, 483, 484, 485, + 486, 487, 1095, 489, 0, 490, 491, 492, 493, 494, + 495, 496, 497, 498, 0, 0, 499, 0, 0, 500, + 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, + 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, + 1096, 0, 0, 0, 0, 0, 0, 1097, 2323, 1099, + 0, 0, 0, 0, 1100, 0, 1101, 0, 0, 0, + 0, 0, 1102, 1103, 1104, 1105, 117, 1056, 821, 1057, + 1058, 1059, 1060, 1061, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 118, 119, 120, 121, 122, + 123, 124, 125, 0, 126, 127, 128, 0, 0, 0, + 0, 0, 1062, 0, 0, 129, 130, 131, 0, 132, + 133, 134, 135, 136, 137, 138, 139, 1063, 141, 1064, + 1065, 0, 144, 145, 146, 147, 148, 149, 1066, 790, + 150, 151, 152, 153, 1067, 1068, 156, 0, 157, 158, + 159, 160, 791, 0, 792, 0, 1069, 164, 165, 166, + 167, 168, 169, 170, 171, 172, 0, 173, 174, 175, + 176, 177, 178, 0, 179, 180, 181, 182, 183, 184, + 185, 186, 187, 188, 189, 1070, 191, 192, 1071, 194, + 1072, 195, 0, 196, 197, 198, 199, 200, 201, 0, + 0, 202, 203, 204, 205, 0, 0, 206, 207, 1073, + 209, 210, 0, 211, 212, 213, 0, 214, 215, 216, + 0, 217, 218, 219, 220, 1074, 222, 223, 224, 225, + 226, 227, 793, 1075, 229, 0, 230, 231, 1076, 233, + 0, 234, 0, 235, 236, 0, 237, 238, 239, 240, + 241, 242, 0, 243, 0, 1077, 1078, 246, 247, 0, + 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, + 258, 259, 0, 260, 261, 262, 263, 264, 265, 266, + 0, 267, 268, 269, 270, 271, 272, 273, 274, 1079, + 1080, 0, 1081, 0, 278, 279, 280, 281, 282, 283, + 284, 285, 286, 287, 288, 0, 0, 289, 290, 291, + 292, 0, 293, 294, 295, 296, 297, 298, 299, 300, + 1082, 302, 303, 304, 305, 306, 307, 308, 309, 310, + 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, + 321, 1083, 323, 1084, 325, 326, 327, 328, 1085, 329, + 330, 331, 332, 1086, 795, 334, 1087, 336, 337, 338, + 0, 339, 340, 0, 0, 1088, 342, 343, 0, 0, + 344, 345, 346, 347, 348, 349, 797, 351, 352, 353, + 354, 355, 356, 357, 358, 359, 360, 361, 0, 0, + 0, 0, 362, 363, 798, 365, 366, 367, 368, 369, + 370, 371, 0, 372, 373, 374, 375, 376, 377, 0, + 378, 379, 380, 381, 382, 1089, 384, 385, 386, 387, + 0, 388, 389, 390, 391, 392, 393, 394, 395, 396, + 397, 398, 399, 400, 0, 401, 402, 403, 404, 405, + 406, 1090, 408, 409, 410, 411, 412, 413, 414, 415, + 416, 417, 418, 419, 420, 0, 0, 421, 422, 423, + 424, 425, 426, 427, 428, 429, 0, 430, 431, 432, + 1091, 434, 0, 435, 436, 437, 438, 439, 440, 441, + 442, 443, 444, 445, 446, 447, 448, 800, 0, 0, + 450, 451, 0, 452, 453, 454, 455, 456, 457, 458, + 0, 459, 1092, 1093, 0, 0, 462, 463, 801, 465, + 802, 1094, 467, 468, 803, 470, 471, 472, 473, 474, + 0, 0, 475, 476, 477, 0, 478, 479, 480, 481, + 0, 482, 483, 484, 485, 486, 487, 1095, 489, 0, + 490, 491, 492, 493, 494, 495, 496, 497, 498, 0, + 0, 499, 0, 0, 500, 501, 502, 503, 504, 505, + 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, + 516, 517, 518, 519, 520, 1096, 0, 0, 0, 0, + 0, 0, 1097, 1098, 1099, 0, 0, 0, 0, 1100, + 0, 2544, 0, 0, 0, 0, 0, 1102, 1103, 1104, + 1105, 117, 1056, 821, 1057, 1058, 1059, 1060, 1061, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 118, 119, 120, 121, 122, 123, 124, 125, 0, 126, + 127, 128, 0, 0, 0, 0, 0, 1062, 0, 0, + 129, 130, 131, 0, 132, 133, 134, 135, 136, 137, + 138, 139, 1063, 141, 1064, 1065, 0, 144, 145, 146, + 147, 148, 149, 1066, 790, 150, 151, 152, 153, 1067, + 1068, 156, 0, 157, 158, 159, 160, 791, 0, 792, + 0, 1069, 164, 165, 166, 167, 168, 169, 170, 171, + 172, 0, 173, 174, 175, 176, 177, 178, 0, 179, + 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, + 1070, 191, 192, 1071, 194, 1072, 195, 0, 196, 197, + 198, 199, 200, 201, 0, 0, 202, 203, 204, 205, + 0, 0, 206, 207, 1073, 209, 210, 0, 211, 212, + 213, 0, 214, 215, 216, 0, 217, 218, 219, 220, + 1074, 222, 223, 224, 225, 226, 227, 793, 1075, 229, + 0, 230, 231, 1076, 233, 0, 234, 0, 235, 236, + 0, 237, 238, 239, 240, 241, 242, 0, 243, 0, + 1077, 1078, 246, 247, 0, 248, 249, 250, 251, 252, + 253, 254, 255, 256, 257, 258, 259, 0, 260, 261, + 262, 263, 264, 265, 266, 0, 267, 268, 269, 270, + 271, 272, 273, 274, 1079, 1080, 0, 1081, 0, 278, + 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, + 0, 0, 289, 290, 291, 292, 0, 293, 294, 295, + 296, 297, 298, 299, 300, 1082, 302, 303, 304, 305, + 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, + 316, 317, 318, 319, 320, 321, 1083, 323, 1084, 325, + 326, 327, 328, 1085, 329, 330, 331, 332, 1086, 795, + 334, 1087, 336, 337, 338, 0, 339, 340, 0, 0, + 1088, 342, 343, 0, 0, 344, 345, 346, 347, 348, + 349, 797, 351, 352, 353, 354, 355, 356, 357, 358, + 359, 360, 361, 0, 0, 0, 0, 362, 363, 798, + 365, 366, 367, 368, 369, 370, 371, 0, 372, 373, + 374, 375, 376, 377, 0, 378, 379, 380, 381, 382, + 1089, 384, 385, 386, 387, 0, 388, 389, 390, 391, + 392, 393, 394, 395, 396, 397, 398, 399, 400, 0, + 401, 402, 403, 404, 405, 406, 1090, 408, 409, 410, + 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, + 0, 0, 421, 422, 423, 424, 425, 426, 427, 428, + 429, 0, 430, 431, 432, 1091, 434, 0, 435, 436, + 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, + 447, 448, 800, 0, 0, 450, 451, 0, 452, 453, + 454, 455, 456, 457, 458, 0, 459, 1092, 1093, 0, + 0, 462, 463, 801, 465, 802, 1094, 467, 468, 803, + 470, 471, 472, 473, 474, 0, 0, 475, 476, 477, + 0, 478, 479, 480, 481, 0, 482, 483, 484, 485, + 486, 487, 1095, 489, 0, 490, 491, 492, 493, 494, + 495, 496, 497, 498, 0, 0, 499, 0, 0, 500, + 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, + 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, + 1096, 0, 0, 0, 0, 0, 0, 1097, 3156, 1099, + 0, 0, 0, 0, 1100, 0, 1101, 0, 0, 0, + 0, 0, 1102, 1103, 1104, 1105, 117, 1056, 821, 1057, + 1058, 1059, 1060, 1061, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 118, 119, 120, 121, 122, + 123, 124, 125, 0, 126, 127, 128, 0, 0, 0, + 0, 0, 1062, 0, 0, 129, 130, 131, 0, 132, + 133, 134, 135, 136, 137, 138, 139, 1063, 141, 1064, + 1065, 0, 144, 145, 146, 147, 148, 149, 1066, 790, + 150, 151, 152, 153, 1067, 1068, 156, 0, 157, 158, + 159, 160, 791, 0, 792, 0, 1069, 164, 165, 166, + 167, 168, 169, 170, 171, 172, 0, 173, 174, 175, + 176, 177, 178, 0, 179, 180, 3096, 182, 183, 184, + 185, 186, 187, 188, 189, 1070, 191, 192, 1071, 194, + 1072, 195, 0, 196, 197, 198, 199, 200, 201, 0, + 0, 202, 203, 204, 205, 0, 0, 206, 207, 1073, + 209, 210, 0, 211, 212, 213, 0, 214, 215, 216, + 0, 217, 218, 219, 220, 1074, 222, 223, 224, 225, + 226, 227, 793, 1075, 229, 0, 230, 231, 1076, 233, + 0, 234, 0, 235, 236, 0, 237, 238, 239, 240, + 241, 242, 0, 243, 0, 3097, 1078, 246, 247, 0, + 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, + 258, 259, 0, 260, 261, 262, 263, 264, 265, 266, + 0, 267, 268, 269, 270, 271, 272, 273, 274, 1079, + 1080, 0, 1081, 0, 278, 279, 280, 281, 282, 283, + 284, 285, 286, 287, 288, 0, 0, 289, 290, 291, + 292, 0, 293, 294, 295, 296, 297, 298, 299, 300, + 1082, 302, 303, 304, 305, 306, 307, 308, 309, 310, + 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, + 321, 1083, 323, 1084, 325, 326, 327, 328, 1085, 329, + 330, 331, 332, 1086, 795, 334, 1087, 336, 337, 338, + 0, 339, 340, 0, 0, 1088, 342, 343, 0, 0, + 344, 345, 346, 347, 348, 349, 797, 351, 352, 353, + 354, 355, 356, 357, 358, 359, 360, 361, 0, 0, + 0, 0, 362, 363, 798, 365, 366, 367, 368, 369, + 370, 371, 0, 372, 373, 374, 375, 376, 377, 0, + 378, 379, 380, 381, 382, 1089, 384, 385, 386, 387, + 0, 388, 389, 390, 391, 392, 393, 394, 395, 396, + 397, 398, 399, 400, 0, 401, 402, 403, 404, 405, + 3098, 1090, 408, 409, 410, 411, 412, 413, 414, 415, + 416, 417, 418, 419, 420, 0, 0, 421, 422, 423, + 424, 425, 426, 427, 428, 429, 0, 430, 431, 432, + 1091, 434, 0, 435, 436, 437, 438, 439, 440, 441, + 442, 443, 444, 445, 446, 447, 448, 800, 0, 0, + 450, 451, 0, 452, 453, 454, 455, 456, 457, 458, + 0, 459, 1092, 1093, 0, 0, 462, 463, 801, 465, + 802, 1094, 467, 468, 803, 470, 471, 472, 473, 474, + 0, 0, 475, 476, 477, 0, 478, 479, 480, 481, + 0, 482, 483, 484, 485, 486, 487, 1095, 489, 0, + 490, 491, 492, 493, 494, 495, 496, 497, 498, 0, + 0, 499, 0, 0, 500, 501, 502, 503, 504, 505, + 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, + 516, 517, 518, 519, 520, 1096, 0, 0, 0, 0, + 0, 0, 1097, 1098, 1099, 0, 0, 0, 0, 1100, + 0, 3099, 0, 0, 0, 0, 0, 1102, 1103, 1104, + 1105, 117, 1056, 821, 1057, 1058, 1059, 1060, 1061, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 118, 119, 120, 121, 122, 123, 124, 125, 0, 126, + 127, 128, 0, 0, 0, 0, 0, 1062, 0, 0, + 129, 130, 131, 0, 132, 133, 134, 135, 136, 137, + 138, 3564, 1063, 141, 1064, 1065, 0, 144, 145, 146, + 147, 148, 149, 1066, 790, 150, 151, 152, 153, 1067, + 1068, 156, 0, 157, 158, 159, 160, 791, 0, 792, + 0, 1069, 164, 165, 166, 167, 168, 169, 170, 171, + 172, 0, 173, 174, 175, 176, 177, 178, 0, 179, + 180, 181, 3565, 183, 184, 185, 186, 187, 188, 189, + 1070, 191, 192, 1071, 194, 1072, 195, 0, 196, 197, + 198, 199, 200, 201, 0, 0, 202, 203, 204, 205, + 0, 0, 206, 207, 1073, 209, 210, 0, 211, 212, + 213, 0, 214, 215, 216, 0, 217, 218, 219, 220, + 1074, 222, 223, 224, 225, 226, 227, 793, 1075, 229, + 0, 230, 231, 1076, 233, 0, 234, 0, 235, 236, + 0, 237, 238, 239, 240, 241, 242, 0, 243, 0, + 1077, 1078, 246, 247, 0, 248, 249, 250, 251, 252, + 253, 254, 255, 256, 257, 258, 259, 0, 260, 261, + 262, 263, 264, 265, 266, 0, 267, 268, 269, 270, + 271, 272, 273, 274, 1079, 1080, 0, 1081, 0, 278, + 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, + 0, 0, 289, 290, 291, 292, 0, 293, 294, 295, + 296, 297, 298, 299, 300, 1082, 302, 303, 304, 305, + 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, + 316, 317, 318, 319, 320, 321, 1083, 323, 1084, 325, + 326, 327, 328, 1085, 329, 330, 331, 332, 1086, 795, + 334, 1087, 336, 337, 338, 0, 339, 340, 0, 0, + 1088, 342, 343, 0, 0, 344, 345, 346, 347, 348, + 349, 797, 351, 352, 353, 354, 355, 356, 357, 358, + 359, 360, 361, 0, 0, 0, 0, 362, 363, 798, + 365, 366, 367, 368, 369, 370, 371, 0, 372, 373, + 374, 375, 376, 377, 0, 378, 379, 380, 381, 382, + 1089, 384, 385, 386, 387, 0, 388, 389, 390, 391, + 392, 393, 394, 395, 396, 397, 398, 399, 400, 0, + 401, 402, 403, 404, 405, 406, 1090, 408, 409, 410, + 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, + 0, 0, 421, 422, 423, 424, 425, 426, 427, 428, + 429, 0, 430, 431, 432, 1091, 434, 0, 435, 436, + 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, + 447, 448, 800, 0, 0, 450, 451, 0, 452, 453, + 454, 455, 456, 457, 458, 0, 459, 1092, 1093, 0, + 0, 462, 463, 801, 465, 802, 1094, 467, 468, 803, + 470, 471, 3566, 473, 474, 0, 0, 475, 476, 477, + 0, 478, 479, 480, 481, 0, 482, 483, 484, 485, + 486, 487, 1095, 489, 0, 490, 491, 492, 493, 494, + 495, 496, 497, 498, 0, 0, 499, 0, 0, 500, + 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, + 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, + 1096, 0, 0, 0, 0, 0, 0, 1097, 1098, 1099, + 0, 0, 0, 0, 1100, 0, 1101, 0, 0, 0, + 0, 0, 1102, 1103, 1104, 1105, 117, 1056, 821, 1057, + 1058, 1059, 1060, 1061, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 118, 119, 120, 121, 122, + 123, 124, 125, 0, 126, 127, 128, 0, 0, 0, + 0, 0, 1062, 0, 0, 129, 130, 131, 0, 132, + 133, 134, 135, 136, 137, 138, 139, 1063, 141, 1064, + 1065, 0, 144, 145, 146, 147, 148, 149, 1066, 790, + 150, 151, 152, 153, 1067, 1068, 156, 0, 157, 158, + 159, 160, 791, 0, 792, 0, 1069, 164, 165, 166, + 167, 168, 169, 170, 171, 172, 0, 173, 174, 175, + 176, 177, 178, 0, 179, 180, 181, 3565, 183, 184, + 185, 186, 187, 188, 189, 1070, 191, 192, 1071, 194, + 1072, 195, 0, 196, 197, 198, 199, 200, 201, 0, + 0, 202, 203, 204, 205, 0, 0, 206, 207, 1073, + 209, 210, 0, 211, 212, 213, 0, 214, 215, 216, + 0, 217, 218, 219, 220, 1074, 222, 223, 224, 225, + 226, 227, 793, 1075, 229, 0, 230, 231, 1076, 233, + 0, 234, 0, 235, 236, 0, 237, 238, 239, 240, + 241, 242, 0, 243, 0, 1077, 1078, 246, 247, 0, + 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, + 258, 259, 0, 260, 261, 262, 263, 264, 265, 266, + 0, 267, 268, 269, 270, 271, 272, 273, 274, 1079, + 1080, 0, 1081, 0, 278, 279, 280, 281, 282, 283, + 284, 285, 286, 287, 288, 0, 0, 289, 290, 291, + 292, 0, 293, 294, 295, 296, 297, 298, 299, 300, + 1082, 302, 303, 304, 305, 306, 307, 308, 309, 310, + 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, + 321, 1083, 323, 1084, 325, 326, 327, 328, 1085, 329, + 330, 331, 332, 1086, 795, 334, 1087, 336, 337, 338, + 0, 339, 340, 0, 0, 1088, 342, 343, 0, 0, + 344, 345, 346, 347, 348, 349, 797, 351, 352, 353, + 354, 355, 356, 357, 358, 359, 360, 361, 0, 0, + 0, 0, 362, 363, 798, 365, 366, 367, 368, 369, + 370, 371, 0, 372, 373, 374, 375, 376, 377, 0, + 378, 379, 380, 381, 382, 1089, 384, 385, 386, 387, + 0, 388, 389, 390, 391, 392, 393, 394, 395, 396, + 397, 398, 399, 400, 0, 401, 402, 403, 404, 405, + 406, 1090, 408, 409, 410, 411, 412, 413, 414, 415, + 416, 417, 418, 419, 420, 0, 0, 421, 422, 423, + 424, 425, 426, 427, 428, 429, 0, 430, 431, 432, + 1091, 434, 0, 435, 436, 437, 438, 439, 440, 441, + 442, 443, 444, 445, 446, 447, 448, 800, 0, 0, + 450, 451, 0, 452, 453, 454, 455, 456, 457, 458, + 0, 459, 1092, 1093, 0, 0, 462, 463, 801, 465, + 802, 1094, 467, 468, 803, 470, 471, 3566, 473, 474, + 0, 0, 475, 476, 477, 0, 478, 479, 480, 481, + 0, 482, 483, 484, 485, 486, 487, 1095, 489, 0, + 490, 491, 492, 493, 494, 495, 496, 497, 498, 0, + 0, 499, 0, 0, 500, 501, 502, 503, 504, 505, + 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, + 516, 517, 518, 519, 520, 1096, 0, 0, 0, 0, + 0, 0, 1097, 1098, 1099, 0, 0, 0, 0, 1100, + 0, 1101, 0, 0, 0, 0, 0, 1102, 1103, 1104, + 1105, 117, 1056, 821, 1057, 1058, 1059, 1060, 1061, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 118, 119, 120, 121, 122, 123, 124, 125, 0, 126, + 127, 128, 0, 0, 0, 0, 0, 1062, 0, 0, + 129, 130, 131, 0, 132, 133, 134, 135, 136, 137, + 138, 139, 1063, 141, 1064, 1065, 0, 144, 145, 146, + 147, 148, 149, 1066, 790, 150, 151, 152, 153, 1067, + 1068, 156, 0, 157, 158, 159, 160, 791, 0, 792, + 0, 163, 164, 165, 166, 167, 168, 169, 170, 171, + 172, 0, 173, 174, 175, 176, 177, 178, 0, 179, + 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, + 1070, 191, 192, 1071, 194, 0, 195, 0, 196, 197, + 198, 199, 200, 201, 0, 0, 202, 203, 204, 205, + 0, 0, 206, 207, 1073, 209, 210, 0, 211, 212, + 213, 0, 214, 215, 216, 0, 217, 218, 219, 220, + 1074, 222, 223, 224, 225, 226, 227, 793, 1075, 229, + 0, 230, 231, 1076, 233, 0, 234, 0, 235, 236, + 0, 237, 238, 239, 240, 241, 242, 0, 243, 0, + 1077, 1078, 246, 247, 0, 248, 249, 250, 251, 252, + 253, 254, 255, 256, 257, 258, 259, 0, 260, 261, + 262, 263, 264, 265, 266, 0, 267, 268, 269, 270, + 271, 272, 273, 274, 1079, 1080, 0, 1081, 0, 278, + 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, + 0, 0, 289, 290, 291, 292, 0, 293, 294, 295, + 296, 297, 298, 299, 300, 1082, 302, 303, 304, 305, + 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, + 316, 317, 318, 319, 320, 321, 1083, 323, 1084, 325, + 326, 327, 328, 0, 329, 330, 331, 332, 1086, 795, + 334, 1087, 336, 337, 338, 0, 339, 340, 0, 0, + 1088, 342, 343, 0, 0, 344, 345, 346, 347, 348, + 349, 797, 351, 352, 353, 354, 355, 356, 357, 358, + 359, 360, 361, 0, 0, 0, 0, 362, 363, 798, + 365, 366, 367, 368, 369, 370, 371, 0, 372, 373, + 374, 375, 376, 377, 0, 378, 379, 380, 381, 382, + 1089, 384, 385, 386, 387, 0, 388, 389, 390, 391, + 392, 393, 394, 395, 396, 397, 398, 399, 400, 0, + 401, 402, 403, 404, 405, 406, 1090, 408, 409, 410, + 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, + 0, 0, 421, 422, 423, 424, 425, 426, 427, 428, + 429, 0, 430, 431, 432, 1091, 434, 0, 435, 436, + 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, + 447, 448, 800, 0, 0, 450, 451, 0, 452, 453, + 454, 455, 456, 457, 458, 0, 459, 1092, 1093, 0, + 0, 462, 463, 801, 465, 802, 1094, 467, 468, 803, + 470, 471, 472, 473, 474, 0, 0, 475, 476, 477, + 0, 478, 479, 480, 481, 0, 482, 483, 484, 485, + 486, 487, 1095, 489, 0, 490, 491, 492, 493, 494, + 495, 496, 497, 498, 0, 0, 499, 0, 0, 500, + 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, + 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, + 0, 0, 0, 0, 0, 0, 0, 1435, 1436, 0, + 0, 0, 0, 0, 1100, 0, 1101, 0, 0, 0, + 0, 0, 1102, 1103, 1104, 1105, 117, 1056, 821, 1057, + 1058, 1059, 1060, 1061, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 118, 119, 120, 121, 122, + 123, 124, 125, 0, 126, 127, 128, 0, 0, 0, + 0, 0, 1062, 0, 0, 129, 130, 131, 0, 132, + 133, 134, 135, 136, 137, 138, -2102, 1063, 141, 1064, + 1065, 0, 144, 145, 146, 147, 148, 149, 1066, 790, + 150, 151, 152, 153, 1067, 1068, 156, 0, 157, 158, + 159, 160, 791, 0, 792, 0, 1069, 164, 165, 166, + 167, 168, 169, 170, 171, 172, 0, 173, 174, 175, + 176, 177, 178, 0, 179, 180, 181, 3565, 183, 184, + 185, 186, 187, 188, 189, 1070, 191, 192, 1071, 194, + 1072, 195, 0, 196, 197, 198, 199, 200, 201, 0, + 0, 202, 203, 204, 205, 0, 0, 206, 207, 1073, + 209, 210, 0, 211, 212, 213, 0, 214, 215, 216, + 0, 217, 218, 219, 220, 1074, 222, 223, 224, 225, + 226, 227, 793, 1075, 229, 0, 230, 231, 1076, 233, + 0, 234, 0, 235, 236, 0, 237, 238, 239, 240, + -2102, 242, 0, 243, 0, 1077, 1078, 246, 247, 0, + 248, 249, 250, 251, 252, 253, 254, -2102, 256, 257, + 258, 259, 0, 260, 261, 262, 263, 264, 265, 266, + 0, 267, 268, 269, 270, 271, 272, 273, 274, 1079, + 1080, 0, 1081, 0, 278, 0, 0, 281, 282, 283, + 284, 285, 286, 287, 288, 0, 0, 289, 290, 291, + -2102, 0, 293, 294, 295, 296, 297, 298, 299, 300, + 1082, 302, 303, 304, 305, 306, 307, 308, 309, 310, + 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, + 321, 1083, 323, 1084, 325, 326, 327, 328, 0, 329, + 330, 0, 332, 1086, 795, 334, 1087, 336, 337, 338, + 0, 339, 340, 0, 0, 1088, 342, 343, 0, 0, + 344, 345, 346, 347, 348, 349, 797, 351, 352, 353, + 354, 355, 356, 357, 358, 359, 360, 361, 0, 0, + 0, 0, 362, 363, 798, 365, 366, 367, 368, 369, + 370, 371, 0, 372, 373, 374, 375, 376, 377, 0, + 378, 379, 380, 381, 382, 1089, 384, 385, 386, 387, + 0, 388, 389, 390, 391, 392, 393, 394, 395, 396, + 397, 398, 399, 400, 0, 401, 402, 403, 404, 405, + 406, 1090, 408, 409, 410, 411, 412, 413, 414, 415, + 416, 417, 418, 419, 420, 0, 0, 421, 422, 423, + 424, 425, 426, 427, 428, 429, 0, -2102, 431, 432, + 1091, 434, 0, 435, 436, 437, 438, 439, 440, 441, + 442, 443, 444, 445, 446, 447, 448, 800, 0, 0, + 450, 451, 0, 452, 453, 454, 455, 456, 457, 458, + 0, 459, 1092, 1093, 0, 0, 462, 463, 801, 465, + 802, 1094, 467, 468, 803, 470, 471, 3566, 473, 474, + 0, 0, 475, 476, 477, 0, 478, 479, 480, 481, + 0, 482, 483, 484, 485, 486, 487, 1095, 489, 0, + 490, 491, 492, 493, 494, 495, 496, 497, 498, 0, + 0, 499, 0, 0, 500, 501, 502, 503, 504, 505, + 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, + 516, 517, 518, 519, 520, -2102, 0, 0, 0, 0, + 0, 0, 1097, 1098, 1099, 0, 0, 0, 0, 1100, + 0, 1101, 0, 0, 0, 0, 0, 1102, 1103, 1104, + 1105, 117, 1056, 821, 1057, 1058, 0, 1060, 1061, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 118, 119, 120, 121, 122, 123, 124, 125, 0, 126, + 127, 128, 0, 0, 0, 0, 0, 1062, 0, 0, + 129, 130, 131, 0, 132, 133, 134, 135, 136, 137, + 138, 139, 1063, 141, 1064, 1065, 0, 144, 145, 146, + 147, 148, 149, 1066, 790, 150, 151, 152, 153, 1067, + 1068, 156, 0, 157, 158, 159, 160, 791, 0, 792, + 0, 163, 164, 165, 166, 167, 168, 169, 170, 171, + 172, 0, 173, 174, 175, 176, 177, 178, 0, 179, + 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, + 1070, 191, 192, 1071, 194, 0, 195, 0, 196, 197, + 198, 199, 200, 201, 0, 0, 202, 203, 204, 205, + 0, 0, 206, 207, 1073, 209, 210, 0, 211, 212, + 213, 0, 214, 215, 216, 0, 217, 218, 219, 220, + 1074, 222, 223, 224, 225, 226, 227, 793, 1075, 229, + 0, 230, 231, 1076, 233, 0, 234, 0, 235, 236, + 0, 237, 238, 239, 240, 241, 242, 0, 243, 0, + 1077, 1078, 246, 247, 0, 248, 249, 250, 251, 252, + 253, 254, 255, 256, 257, 258, 259, 0, 260, 261, + 262, 263, 264, 265, 266, 0, 267, 268, 269, 270, + 271, 272, 273, 274, 1079, 1080, 0, 1081, 0, 278, + 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, + 0, 0, 289, 290, 291, 292, 0, 293, 294, 295, + 296, 297, 298, 299, 300, 1082, 302, 303, 304, 305, + 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, + 316, 317, 318, 319, 320, 321, 1083, 323, 1084, 325, + 326, 327, 328, 0, 329, 330, 331, 332, 1086, 795, + 334, 1087, 336, 337, 338, 0, 339, 340, 0, 0, + 341, 342, 343, 0, 0, 344, 345, 346, 347, 348, + 349, 797, 351, 352, 353, 354, 355, 356, 357, 358, + 359, 360, 361, 0, 0, 0, 0, 362, 363, 798, + 365, 366, 367, 368, 369, 370, 371, 0, 372, 373, + 374, 375, 376, 377, 0, 378, 379, 380, 381, 382, + 1089, 384, 385, 386, 387, 0, 388, 389, 390, 391, + 392, 393, 394, 395, 396, 397, 398, 399, 400, 0, + 401, 402, 403, 404, 405, 406, 2222, 2223, 409, 410, + 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, + 0, 0, 421, 422, 423, 424, 425, 426, 427, 428, + 429, 0, 430, 431, 432, 1091, 434, 0, 435, 436, + 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, + 447, 448, 800, 0, 0, 450, 451, 0, 452, 453, + 454, 455, 456, 457, 458, 0, 459, 1092, 1093, 0, + 0, 462, 463, 801, 465, 802, 1094, 467, 468, 803, + 470, 471, 472, 473, 474, 0, 0, 475, 476, 477, + 0, 478, 479, 480, 481, 0, 482, 483, 484, 485, + 486, 487, 1095, 489, 0, 490, 491, 492, 493, 494, + 495, 496, 497, 498, 0, 0, 499, 0, 0, 500, + 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, + 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, + 0, 0, 0, 0, 0, 0, 0, 2224, 2225, 0, + 0, 0, 0, 0, 1100, 0, 1101, 0, 0, 0, + 0, 0, 1102, 1103, 1104, 1105, 117, 1056, 821, 1057, + 1058, 1059, 1060, 1061, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 118, 119, 120, 121, 122, + 123, 124, 125, 0, 126, 127, 128, 0, 0, 0, + 0, 0, 1062, 0, 0, 129, 130, 131, 0, 132, + 133, 134, 135, 136, 137, 138, 139, 1063, 141, 1064, + 1065, 0, 144, 145, 146, 147, 148, 149, 1066, 790, + 150, 151, 152, 153, 1067, 1068, 156, 0, 157, 158, + 159, 160, 791, 0, 792, 0, 163, 164, 165, 166, + 167, 168, 169, 170, 171, 172, 0, 173, 174, 175, + 176, 177, 178, 0, 179, 180, 181, 182, 183, 184, + 185, 186, 187, 188, 189, 1070, 191, 192, 1071, 194, + 0, 195, 0, 196, 197, 198, 199, 200, 201, 0, + 0, 202, 203, 204, 205, 0, 0, 206, 207, 1073, + 209, 210, 0, 211, 212, 213, 0, 214, 215, 216, + 0, 217, 218, 219, 220, 1074, 222, 223, 224, 225, + 226, 227, 793, 1075, 229, 0, 230, 231, 1076, 233, + 0, 234, 0, 235, 236, 0, 237, 238, 239, 240, + 241, 242, 0, 243, 0, 1077, 1078, 246, 247, 0, + 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, + 258, 259, 0, 260, 261, 262, 263, 264, 265, 266, + 0, 267, 268, 269, 270, 271, 272, 273, 274, 1079, + 1080, 0, 1081, 0, 278, 0, 280, 281, 282, 283, + 284, 285, 286, 287, 288, 0, 0, 289, 290, 291, + 292, 0, 293, 294, 295, 296, 297, 298, 299, 300, + 1082, 302, 303, 304, 305, 306, 307, 308, 309, 310, + 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, + 321, 1083, 323, 1084, 325, 326, 327, 328, 0, 329, + 330, 331, 332, 1086, 795, 334, 1087, 336, 337, 338, + 0, 339, 340, 0, 0, 1088, 342, 343, 0, 0, + 344, 345, 346, 347, 348, 349, 797, 351, 352, 353, + 354, 355, 356, 357, 358, 359, 360, 361, 0, 0, + 0, 0, 362, 363, 798, 365, 366, 367, 368, 369, + 370, 371, 0, 372, 373, 374, 375, 376, 377, 0, + 378, 379, 380, 381, 382, 1089, 384, 385, 386, 387, + 0, 388, 389, 390, 391, 392, 393, 394, 395, 396, + 397, 398, 399, 400, 0, 401, 402, 403, 404, 405, + 406, 1090, 408, 409, 410, 411, 412, 413, 414, 415, + 416, 417, 418, 419, 420, 0, 0, 421, 422, 423, + 424, 425, 426, 427, 428, 429, 0, 430, 431, 432, + 1091, 434, 0, 435, 436, 437, 438, 439, 440, 441, + 442, 443, 444, 445, 446, 447, 448, 800, 0, 0, + 450, 451, 0, 452, 453, 454, 455, 456, 457, 458, + 0, 459, 1092, 1093, 0, 0, 462, 463, 801, 465, + 802, 1094, 467, 468, 803, 470, 471, 472, 473, 474, + 0, 0, 475, 476, 477, 0, 478, 479, 480, 481, + 0, 482, 483, 484, 485, 486, 487, 1095, 489, 0, + 490, 491, 492, 493, 494, 495, 496, 497, 498, 0, + 0, 499, 0, 0, 500, 501, 502, 503, 504, 505, + 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, + 516, 517, 518, 519, 520, 0, 0, 0, 0, 0, + 0, 0, 1435, 1436, 0, 0, 0, 0, 0, 1100, + 0, 1101, 0, 0, 0, 0, 0, 1102, 1103, 1104, + 1105, 117, 1056, 821, 1057, 1058, 0, 1060, 1061, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 118, 119, 120, 121, 122, 123, 124, 125, 0, 126, + 127, 128, 0, 0, 0, 0, 0, 1062, 0, 0, + 129, 130, 131, 0, 132, 133, 134, 135, 136, 137, + 138, 139, 1063, 141, 1064, 1065, 0, 144, 145, 146, + 147, 148, 149, 1066, 790, 150, 151, 152, 153, 1067, + 1068, 156, 0, 157, 158, 159, 160, 791, 0, 792, + 0, 163, 164, 165, 166, 167, 168, 169, 170, 171, + 172, 0, 173, 174, 175, 176, 177, 178, 0, 179, + 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, + 1070, 191, 192, 1071, 194, 0, 195, 0, 196, 197, + 198, 199, 200, 201, 0, 0, 202, 203, 204, 205, + 0, 0, 206, 207, 1073, 209, 210, 0, 211, 212, + 213, 0, 214, 215, 216, 0, 217, 218, 219, 220, + 1074, 222, 223, 224, 225, 226, 227, 793, 1075, 229, + 0, 230, 231, 1076, 233, 0, 234, 0, 235, 236, + 0, 237, 238, 239, 240, 241, 242, 0, 243, 3116, + 1077, 1078, 246, 247, 0, 248, 249, 250, 251, 252, + 253, 254, 255, 256, 257, 258, 259, 0, 260, 261, + 262, 263, 264, 265, 266, 0, 267, 268, 269, 270, + 271, 272, 273, 274, 1079, 1080, 0, 1081, 0, 278, + 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, + 0, 0, 289, 290, 291, 292, 0, 293, 294, 295, + 296, 297, 298, 299, 300, 1082, 302, 303, 304, 305, + 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, + 316, 317, 318, 319, 320, 321, 1083, 323, 1084, 325, + 326, 327, 328, 0, 329, 330, 331, 332, 1086, 795, + 334, 1087, 336, 337, 338, 0, 339, 340, 0, 0, + 341, 342, 343, 0, 0, 344, 345, 346, 347, 348, + 349, 797, 351, 352, 353, 354, 355, 356, 357, 358, + 359, 360, 361, 0, 0, 0, 0, 362, 363, 798, + 365, 366, 367, 368, 369, 370, 371, 0, 372, 373, + 374, 375, 376, 377, 0, 378, 379, 380, 381, 382, + 1089, 384, 385, 386, 387, 0, 388, 389, 390, 391, + 392, 393, 394, 395, 396, 397, 398, 399, 400, 0, + 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, + 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, + 0, 0, 421, 422, 423, 424, 425, 426, 427, 428, + 429, 0, 430, 431, 432, 1091, 434, 0, 435, 436, + 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, + 447, 448, 800, 0, 0, 450, 451, 0, 452, 453, + 454, 455, 456, 457, 458, 0, 459, 1092, 1093, 0, + 0, 462, 463, 801, 465, 802, 1094, 467, 468, 803, + 470, 471, 472, 473, 474, 0, 0, 475, 476, 477, + 0, 478, 479, 480, 481, 0, 482, 483, 484, 485, + 486, 487, 1095, 489, 0, 490, 491, 492, 493, 494, + 495, 496, 497, 498, 0, 0, 499, 0, 0, 500, + 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, + 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 1100, 0, 2799, 0, 0, 0, + 0, 0, 1102, 1103, 1104, 1105, 117, 1056, 821, 1057, + 1058, 0, 1060, 1061, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 118, 119, 120, 121, 122, + 123, 124, 125, 0, 126, 127, 128, 0, 0, 0, + 0, 0, 1062, 0, 0, 129, 130, 131, 0, 132, + 133, 134, 135, 136, 137, 138, 139, 1063, 141, 1064, + 1065, 0, 144, 145, 146, 147, 148, 149, 1066, 790, + 150, 151, 152, 153, 1067, 1068, 156, 0, 157, 158, + 159, 160, 791, 0, 792, 0, 163, 164, 165, 166, + 167, 168, 169, 170, 171, 172, 0, 173, 174, 175, + 176, 177, 178, 0, 179, 180, 181, 182, 183, 184, + 185, 186, 187, 188, 189, 1070, 191, 192, 1071, 194, + 0, 195, 0, 196, 197, 198, 199, 200, 201, 0, + 0, 202, 203, 204, 205, 0, 0, 206, 207, 1073, + 209, 210, 0, 211, 212, 213, 0, 214, 215, 216, + 0, 217, 218, 219, 220, 1074, 222, 223, 224, 225, + 226, 227, 793, 1075, 229, 0, 230, 231, 1076, 233, + 0, 234, 0, 235, 236, 0, 237, 238, 239, 240, + 241, 242, 0, 243, 0, 1077, 1078, 246, 247, 0, + 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, + 258, 259, 0, 260, 261, 262, 263, 264, 265, 266, + 0, 267, 268, 269, 270, 271, 272, 273, 274, 1079, + 1080, 0, 1081, 0, 278, 279, 280, 281, 282, 283, + 284, 285, 286, 287, 288, 0, 0, 289, 290, 291, + 292, 0, 293, 294, 295, 296, 297, 298, 299, 300, + 1082, 302, 303, 304, 305, 306, 307, 308, 309, 310, + 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, + 321, 1083, 323, 1084, 325, 326, 327, 328, 0, 329, + 330, 331, 332, 1086, 795, 334, 1087, 336, 337, 338, + 0, 339, 340, 0, 0, 341, 342, 343, 0, 0, + 344, 345, 346, 347, 348, 349, 797, 351, 352, 353, + 354, 355, 356, 357, 358, 359, 360, 361, 0, 0, + 0, 0, 362, 363, 798, 365, 366, 367, 368, 369, + 370, 371, 0, 372, 373, 374, 375, 376, 377, 0, + 378, 379, 380, 381, 382, 1089, 384, 385, 386, 387, + 0, 388, 389, 390, 391, 392, 393, 394, 395, 396, + 397, 398, 399, 400, 0, 401, 402, 403, 404, 405, + 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, + 416, 417, 418, 419, 420, 0, 0, 421, 422, 423, + 424, 425, 426, 427, 428, 429, 0, 430, 431, 432, + 1091, 434, 0, 435, 436, 437, 438, 439, 440, 441, + 442, 443, 444, 445, 446, 447, 448, 800, 0, 0, + 450, 451, 0, 452, 453, 454, 455, 456, 457, 458, + 0, 459, 1092, 1093, 0, 0, 462, 463, 801, 465, + 802, 1094, 467, 468, 803, 470, 471, 472, 473, 474, + 0, 0, 475, 476, 477, 0, 478, 479, 480, 481, + 0, 482, 483, 484, 485, 486, 487, 1095, 489, 0, + 490, 491, 492, 493, 494, 495, 496, 497, 498, 0, + 0, 499, 0, 0, 500, 501, 502, 503, 504, 505, + 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, + 516, 517, 518, 519, 520, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 1100, + 0, 2799, 0, 0, 0, 0, 0, 1102, 1103, 1104, + 1105, 117, 1056, 821, 1057, 1058, 0, 1060, 1061, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 118, 119, 120, 121, 122, 123, 124, 125, 0, 126, + 127, 128, 0, 0, 0, 0, 0, 1062, 0, 0, + 129, 130, 131, 0, 132, 133, 134, 135, 136, 137, + 138, 139, 1063, 141, 1064, 1065, 0, 144, 145, 146, + 147, 148, 149, 1066, 790, 150, 151, 152, 153, 1067, + 1068, 156, 0, 157, 158, 159, 160, 791, 0, 792, + 0, 163, 164, 165, 166, 167, 168, 169, 170, 171, + 172, 0, 173, 174, 175, 176, 177, 178, 0, 179, + 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, + 1070, 191, 192, 1071, 194, 0, 195, 0, 196, 197, + 198, 199, 200, 201, 0, 0, 202, 203, 204, 205, + 0, 0, 206, 207, 1073, 209, 210, 0, 211, 212, + 213, 0, 214, 215, 216, 0, 217, 218, 219, 220, + 1074, 222, 223, 224, 225, 226, 227, 793, 1075, 229, + 0, 230, 231, 1076, 233, 0, 234, 0, 235, 236, + 0, 237, 238, 239, 240, 241, 242, 0, 243, 0, + 1077, 1078, 246, 247, 0, 248, 249, 250, 251, 252, + 253, 254, 255, 256, 257, 258, 259, 0, 260, 261, + 262, 263, 264, 265, 266, 0, 267, 268, 269, 270, + 271, 272, 273, 274, 1079, 1080, 0, 1081, 0, 278, + 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, + 0, 0, 289, 290, 291, 292, 0, 293, 294, 295, + 296, 297, 298, 299, 300, 1082, 302, 303, 304, 305, + 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, + 316, 317, 318, 319, 320, 321, 1083, 323, 1084, 325, + 326, 327, 328, 0, 329, 330, 331, 332, 1086, 795, + 334, 1087, 336, 337, 338, 0, 339, 340, 0, 0, + 341, 342, 343, 0, 0, 344, 345, 346, 347, 348, + 349, 797, 351, 352, 353, 354, 355, 356, 357, 358, + 359, 360, 361, 0, 0, 0, 0, 362, 363, 798, + 365, 366, 367, 368, 369, 370, 371, 0, 372, 373, + 374, 375, 376, 377, 0, 378, 379, 380, 381, 382, + 1089, 384, 385, 386, 387, 0, 388, 389, 390, 391, + 392, 393, 394, 395, 396, 397, 398, 399, 400, 0, + 401, 402, 403, 404, 405, 406, 1090, 408, 409, 410, + 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, + 0, 0, 421, 422, 423, 424, 425, 426, 427, 428, + 429, 0, 430, 431, 432, 1091, 434, 0, 435, 436, + 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, + 447, 448, 800, 0, 0, 450, 451, 0, 452, 453, + 454, 455, 456, 457, 458, 0, 459, 1092, 1093, 0, + 0, 462, 463, 801, 465, 802, 1094, 467, 468, 803, + 470, 471, 472, 473, 474, 0, 0, 475, 476, 477, + 0, 478, 479, 480, 481, 0, 482, 483, 484, 485, + 486, 487, 1095, 489, 0, 490, 491, 492, 493, 494, + 495, 496, 497, 498, 0, 0, 499, 0, 0, 500, + 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, + 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 1100, 0, 1101, 0, 0, 0, + 0, 0, 1102, 1103, 1104, 1105, 117, 1056, 821, 1057, + 1058, 1059, 1060, 1061, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 118, 119, 120, 121, 122, + 123, 124, 125, 0, 126, 127, 128, 0, 0, 0, + 0, 0, 1062, 0, 0, 129, 130, 131, 0, 132, + 133, 134, 135, 136, 137, 138, 0, 1063, 141, 1064, + 1065, 0, 144, 145, 146, 147, 148, 149, 1066, 790, + 150, 151, 152, 153, 1067, 1068, 156, 0, 157, 158, + 159, 160, 791, 0, 792, 0, 1069, 164, 165, 166, + 167, 168, 169, 170, 171, 172, 0, 173, 174, 175, + 176, 177, 178, 0, 179, 180, 181, 182, 183, 184, + 185, 186, 187, 188, 189, 1070, 191, 192, 1071, 194, + 1072, 195, 0, 196, 197, 198, 199, 200, 201, 0, + 0, 202, 203, 204, 205, 0, 0, 206, 207, 1073, + 209, 210, 0, 211, 212, 213, 0, 214, 0, 216, + 0, 217, 218, 219, 220, 1074, 222, 223, 224, 225, + 226, 227, 793, 1075, 229, 0, 230, 231, 1076, 233, + 0, 234, 0, 235, 236, 0, 237, 238, 239, 240, + 0, 242, 0, 243, 0, 1077, 1078, 246, 247, 0, + 248, 249, 250, 251, 252, 253, 254, 0, 256, 257, + 258, 259, 0, 260, 261, 262, 263, 264, 265, 266, + 0, 267, 268, 269, 270, 271, 272, 273, 274, 1079, + 1080, 0, 1081, 0, 278, 0, 0, 281, 282, 283, + 284, 285, 286, 287, 288, 0, 0, 289, 290, 291, + 0, 0, 293, 294, 295, 296, 297, 298, 299, 300, + 1082, 302, 303, 304, 305, 306, 307, 308, 309, 310, + 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, + 321, 1083, 323, 1084, 325, 326, 327, 328, 0, 329, + 330, 0, 332, 1086, 795, 334, 1087, 336, 337, 338, + 0, 339, 340, 0, 0, 1088, 342, 343, 0, 0, + 344, 345, 346, 347, 348, 349, 797, 351, 352, 353, + 354, 355, 356, 357, 358, 359, 360, 361, 0, 0, + 0, 0, 362, 363, 798, 365, 366, 367, 368, 369, + 370, 371, 0, 372, 373, 374, 375, 376, 377, 0, + 378, 379, 380, 381, 382, 1089, 384, 385, 386, 387, + 0, 388, 389, 390, 391, 392, 393, 394, 395, 396, + 397, 398, 399, 400, 0, 401, 402, 403, 404, 405, + 406, 1090, 408, 409, 410, 411, 412, 413, 414, 415, + 416, 417, 418, 419, 420, 0, 0, 421, 422, 423, + 424, 425, 426, 427, 428, 429, 0, 0, 431, 432, + 1091, 434, 0, 435, 436, 437, 438, 439, 440, 441, + 442, 443, 444, 445, 446, 447, 448, 800, 0, 0, + 450, 451, 0, 452, 453, 454, 455, 456, 457, 458, + 0, 459, 1092, 1093, 0, 0, 462, 463, 801, 465, + 802, 1094, 467, 468, 803, 470, 471, 472, 473, 474, + 0, 0, 475, 476, 477, 0, 478, 479, 480, 481, + 0, 482, 483, 484, 485, 486, 487, 1095, 489, 0, + 490, 491, 492, 493, 494, 495, 496, 497, 498, 0, + 0, 499, 0, 0, 500, 501, 502, 503, 504, 505, + 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, + 516, 517, 518, 519, 520, 0, 0, 0, 0, 0, + 0, 0, 1097, 1098, 1099, 0, 974, 1364, 821, 1100, + 0, 1101, 1060, 0, 0, 0, 0, 1102, 1103, 1104, + 1105, 0, 0, 0, 0, 118, 119, 120, 121, 122, + 123, 124, 125, 0, 126, 127, 128, 0, 0, 0, + 565, 0, 0, 0, 0, 570, 130, 131, 0, 132, + 133, 134, 572, 136, 137, 138, 573, 574, 575, 576, + 577, 0, 144, 145, 146, 147, 148, 149, 0, 0, + 150, 151, 152, 153, 581, 582, 156, 0, 157, 158, + 159, 160, 584, 0, 586, 0, 588, 164, 165, 166, + 167, 168, 589, 170, 171, 172, 0, 173, 174, 175, + 176, 177, 178, 0, 592, 180, 181, 182, 183, 184, + 185, 186, 187, 188, 189, 594, 191, 192, 595, 194, + 0, 195, 0, 196, 197, 198, 199, 200, 201, 0, + 0, 202, 203, 204, 205, 0, 0, 206, 207, 208, + 209, 210, 0, 211, 212, 213, 0, 214, 215, 216, + 0, 217, 218, 219, 220, 605, 222, 223, 224, 225, + 226, 227, 606, 1365, 229, 0, 230, 231, 609, 233, + 0, 234, 0, 235, 612, 0, 614, 238, 239, 615, + 616, 242, 0, 243, 0, 619, 620, 246, 247, 0, + 248, 249, 250, 251, 252, 253, 254, 622, 256, 257, + 258, 259, 0, 260, 261, 262, 263, 264, 265, 266, + 0, 267, 625, 626, 270, 271, 272, 273, 274, 627, + 628, 0, 630, 0, 278, 632, 633, 281, 634, 283, + 284, 285, 286, 287, 288, 0, 0, 289, 637, 291, + 638, 0, 293, 294, 295, 296, 297, 298, 299, 300, + 2403, 302, 303, 304, 305, 306, 307, 308, 309, 310, + 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, + 321, 641, 642, 643, 325, 326, 327, 644, 0, 329, + 330, 646, 332, 0, 648, 334, 649, 336, 337, 338, + 0, 339, 340, 1366, 0, 341, 342, 343, 0, 0, + 344, 345, 655, 656, 348, 657, 658, 351, 352, 353, + 354, 355, 356, 357, 358, 359, 360, 361, 0, 0, + 0, 0, 362, 363, 663, 664, 366, 367, 665, 369, + 370, 371, 0, 372, 373, 374, 375, 376, 377, 0, + 378, 379, 380, 381, 382, 668, 384, 385, 386, 387, + 0, 388, 389, 390, 391, 392, 393, 394, 395, 396, + 397, 398, 399, 400, 0, 401, 402, 671, 404, 405, + 406, 672, 408, 409, 410, 411, 412, 413, 414, 415, + 416, 417, 418, 419, 420, 0, 674, 421, 422, 423, + 424, 425, 426, 675, 428, 429, 0, 677, 431, 432, + 678, 434, 0, 435, 436, 437, 438, 439, 440, 441, + 442, 443, 444, 445, 446, 680, 448, 681, 0, 0, + 450, 451, 0, 452, 685, 454, 455, 456, 457, 458, + 0, 459, 687, 688, 0, 0, 462, 463, 691, 465, + 692, 1367, 467, 468, 694, 470, 471, 472, 473, 474, + 0, 0, 475, 476, 477, 0, 478, 479, 480, 481, + 0, 482, 483, 484, 485, 486, 699, 700, 489, 0, + 490, 702, 492, 493, 494, 495, 496, 497, 498, 0, + 0, 499, 0, 0, 500, 501, 502, 503, 504, 505, + 707, 708, 709, 710, 711, 712, 713, 714, 715, 716, + 717, 517, 518, 519, 520, 0, 0, 0, 0, 0, + 0, 0, 1368, 1369, 2404, 117, 0, 0, 0, 2405, + 0, 2406, 1061, 0, 0, 0, 0, 0, 0, 0, + 1105, 0, 0, 0, 118, 119, 120, 121, 122, 123, + 124, 125, 0, 126, 127, 128, 0, 0, 0, 0, + 0, 1062, 0, 0, 129, 130, 131, 0, 132, 133, + 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, + 0, 144, 145, 146, 147, 148, 149, 1066, 790, 150, + 151, 152, 153, 154, 155, 156, 0, 157, 158, 159, + 160, 791, 0, 792, 0, 163, 164, 165, 166, 167, + 168, 169, 170, 171, 172, 0, 173, 174, 175, 176, + 177, 178, 0, 179, 180, 181, 182, 183, 184, 185, + 186, 187, 188, 189, 190, 191, 192, 193, 194, 0, + 195, 0, 196, 197, 198, 199, 200, 201, 0, 0, + 202, 203, 204, 205, 0, 0, 206, 207, 208, 209, + 210, 0, 211, 212, 213, 0, 214, 215, 216, 0, + 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, + 227, 793, 0, 229, 0, 230, 231, 232, 233, 0, + 234, 0, 235, 236, 0, 237, 238, 239, 240, 241, + 242, 0, 243, 0, 244, 245, 246, 247, 0, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, - 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, - 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, - 279, 280, 281, 282, 283, 284, 285, 286, -1, 288, - 289, -1, -1, 292, 293, 294, -1, -1, 297, 298, - 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, - 309, 310, 311, 312, 313, 314, -1, -1, -1, -1, - 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, - -1, 330, 331, 332, 333, 334, 335, -1, 337, 338, - 339, 340, 341, 342, 343, 344, 345, 346, -1, 348, - 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, - 359, 360, -1, 362, 363, 364, 365, 366, 367, 368, - 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, - 379, 380, 381, -1, -1, 384, 385, 386, 387, 388, - 389, 390, 391, 392, -1, 394, 395, 396, 397, 398, - -1, 400, 401, 402, 403, 404, 405, 406, 407, 408, - 409, 410, 411, 412, 413, 414, -1, -1, 417, 418, - -1, 420, 421, 422, 423, 424, 425, 426, -1, 428, - 429, 430, -1, -1, 433, 434, 435, 436, 437, 438, - 439, 440, 441, 442, 443, 444, 445, 446, -1, -1, - 449, 450, 451, -1, 453, 454, 455, 456, -1, 458, - 459, 460, 461, 462, 463, 464, 465, -1, 467, 468, - 469, 470, 471, 472, 473, 474, 475, -1, -1, 478, - -1, -1, 481, 482, 483, 484, 485, 486, 487, 488, - 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, - 499, 500, 501, 502, -1, -1, -1, -1, -1, -1, - 509, 510, 511, -1, -1, -1, -1, 516, -1, 518, - -1, -1, -1, -1, -1, 524, 525, 526, 527, 3, - 4, 5, 6, 7, 8, 9, 10, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 22, 23, - 24, 25, 26, 27, 28, 29, -1, 31, 32, 33, - -1, -1, -1, -1, -1, 39, -1, -1, 42, 43, - 44, -1, 46, 47, 48, 49, 50, 51, 52, 53, - 54, 55, 56, 57, -1, 59, 60, 61, 62, 63, - 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, - -1, 75, 76, 77, 78, 79, -1, 81, -1, 83, - 84, 85, 86, 87, 88, 89, 90, 91, 92, -1, - 94, 95, 96, 97, 98, 99, -1, 101, 102, 103, - 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, - 114, 115, 116, 117, 118, -1, 120, 121, 122, 123, - 124, 125, -1, -1, 128, 129, 130, 131, -1, -1, - 134, 135, 136, 137, 138, -1, 140, 141, 142, -1, - 144, 145, 146, -1, 148, 149, 150, 151, 152, 153, - 154, 155, 156, 157, 158, 159, 160, 161, -1, 163, - 164, 165, 166, -1, 168, -1, 170, 171, -1, 173, - 174, 175, 176, 177, 178, -1, 180, -1, 182, 183, - 184, 185, -1, 187, 188, 189, 190, 191, 192, 193, - 194, 195, 196, 197, 198, -1, 200, 201, 202, 203, - 204, 205, 206, -1, 208, 209, 210, 211, 212, 213, - 214, 215, 216, 217, -1, 219, -1, 221, 222, 223, - 224, 225, 226, 227, 228, 229, 230, 231, -1, -1, - 234, 235, 236, 237, -1, 239, 240, 241, 242, 243, - 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, - 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, - 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, - 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, - 284, 285, 286, -1, 288, 289, -1, -1, 292, 293, - 294, -1, -1, 297, 298, 299, 300, 301, 302, 303, - 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, - 314, -1, -1, -1, -1, 319, 320, 321, 322, 323, - 324, 325, 326, 327, 328, -1, 330, 331, 332, 333, - 334, 335, -1, 337, 338, 339, 340, 341, 342, 343, - 344, 345, 346, -1, 348, 349, 350, 351, 352, 353, - 354, 355, 356, 357, 358, 359, 360, -1, 362, 363, - 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, - 374, 375, 376, 377, 378, 379, 380, 381, -1, -1, - 384, 385, 386, 387, 388, 389, 390, 391, 392, -1, - 394, 395, 396, 397, 398, -1, 400, 401, 402, 403, + 259, 0, 260, 261, 262, 263, 264, 265, 266, 0, + 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, + 0, 277, 0, 278, 279, 280, 281, 282, 283, 284, + 285, 286, 287, 288, 0, 0, 289, 290, 291, 292, + 0, 293, 294, 295, 296, 297, 298, 299, 300, 1082, + 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, + 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, + 322, 323, 324, 325, 326, 327, 328, 0, 329, 330, + 331, 332, 0, 795, 334, 335, 336, 337, 338, 0, + 339, 340, 0, 0, 341, 342, 343, 0, 0, 344, + 345, 346, 347, 348, 349, 797, 351, 352, 353, 354, + 355, 356, 357, 358, 359, 360, 361, 0, 0, 0, + 0, 362, 363, 798, 365, 366, 367, 368, 369, 370, + 371, 0, 372, 373, 374, 375, 376, 377, 0, 378, + 379, 380, 381, 382, 383, 384, 385, 386, 387, 0, + 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, + 398, 399, 400, 0, 401, 402, 403, 404, 405, 406, + 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, + 417, 418, 419, 420, 0, 0, 421, 422, 423, 424, + 425, 426, 427, 428, 429, 0, 430, 431, 432, 433, + 434, 0, 435, 436, 437, 438, 439, 440, 441, 442, + 443, 444, 445, 446, 447, 448, 800, 0, 0, 450, + 451, 0, 452, 453, 454, 455, 456, 457, 458, 0, + 459, 460, 461, 0, 0, 462, 463, 801, 465, 802, + 0, 467, 468, 803, 470, 471, 472, 473, 474, 0, + 0, 475, 476, 477, 0, 478, 479, 480, 481, 0, + 482, 483, 484, 485, 486, 487, 488, 489, 0, 490, + 491, 492, 493, 494, 495, 496, 497, 498, 0, 0, + 499, 0, 0, 500, 501, 502, 503, 504, 505, 506, + 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, + 517, 518, 519, 520, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 528, 1980, 0, 1100, 0, + 2140, 1981, 1061, 0, 0, 0, 1102, 1103, 1104, 1105, + 0, 0, 0, 0, 118, 119, 120, 121, 122, 123, + 124, 125, 0, 126, 127, 128, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 130, 131, 0, 132, 133, + 134, 0, 136, 137, 138, 139, 140, 0, 142, 143, + 0, 144, 145, 146, 147, 148, 149, 0, 0, 150, + 151, 152, 153, 154, 155, 156, 0, 157, 158, 159, + 160, 161, 0, 0, 0, 163, 164, 165, 166, 167, + 168, 0, 170, 171, 172, 0, 173, 174, 175, 176, + 177, 178, 0, 0, 180, 181, 182, 183, 184, 185, + 186, 187, 188, 189, 190, 191, 192, 193, 194, 0, + 195, 0, 196, 197, 198, 199, 200, 201, 0, 0, + 202, 203, 204, 205, 0, 0, 206, 207, 208, 209, + 210, 0, 211, 212, 213, 0, 214, 215, 216, 0, + 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, + 227, 228, 0, 229, 0, 230, 231, 232, 233, 0, + 234, 0, 235, 0, 0, 0, 238, 239, 529, 0, + 242, 0, 243, 0, 244, 245, 246, 247, 0, 248, + 249, 250, 251, 252, 253, 254, 0, 256, 257, 258, + 259, 0, 260, 261, 262, 263, 264, 265, 266, 0, + 267, 0, 269, 270, 271, 272, 273, 274, 275, 276, + 0, 277, 0, 278, 0, 0, 281, 0, 283, 284, + 285, 286, 287, 288, 0, 0, 289, 0, 291, 0, + 0, 293, 294, 295, 296, 297, 298, 299, 300, 530, + 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, + 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, + 322, 0, 324, 325, 326, 327, 328, 0, 329, 330, + 0, 332, 0, 333, 334, 335, 336, 337, 338, 0, + 339, 340, 0, 0, 341, 342, 343, 0, 0, 344, + 345, 346, 0, 348, 0, 350, 351, 352, 353, 354, + 355, 356, 357, 358, 359, 360, 361, 0, 0, 0, + 0, 362, 363, 364, 0, 366, 367, 368, 369, 370, + 371, 0, 372, 373, 374, 375, 376, 377, 0, 378, + 379, 380, 381, 382, 383, 384, 385, 386, 387, 0, + 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, + 398, 399, 400, 0, 401, 402, 0, 404, 405, 406, + 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, + 417, 418, 419, 420, 0, 0, 421, 422, 423, 424, + 425, 426, 427, 428, 429, 0, 0, 431, 432, 433, + 434, 0, 435, 436, 437, 438, 439, 440, 441, 442, + 443, 444, 445, 446, 531, 448, 449, 0, 0, 450, + 451, 0, 452, 0, 454, 455, 456, 457, 458, 0, + 459, 460, 461, 0, 0, 462, 463, 464, 465, 466, + 0, 467, 468, 469, 470, 471, 472, 473, 474, 0, + 0, 475, 476, 477, 0, 478, 479, 480, 481, 0, + 482, 483, 484, 485, 486, 487, 488, 489, 0, 490, + 0, 492, 493, 494, 495, 496, 497, 498, 0, 0, + 499, 0, 0, 500, 501, 502, 503, 504, 505, 506, + 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, + 517, 518, 519, 520, 0, 0, 0, 0, 0, 528, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 1102, 1103, 118, 119, + 120, 121, 122, 123, 124, 125, 0, 126, 127, 128, + 0, 0, 0, 0, 0, 0, 1010, 0, 0, 130, + 131, 0, 132, 133, 134, 0, 136, 137, 138, 139, + 140, 0, 142, 143, 0, 144, 145, 146, 147, 148, + 149, 0, 0, 150, 151, 152, 153, 154, 155, 156, + 0, 157, 158, 159, 160, 161, 0, 0, 0, 163, + 164, 165, 166, 167, 168, 0, 170, 171, 172, 0, + 173, 174, 175, 176, 177, 178, 0, 0, 180, 181, + 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, + 192, 193, 194, 0, 195, 0, 196, 197, 198, 199, + 200, 201, 0, 0, 202, 203, 204, 205, 0, 0, + 206, 207, 208, 209, 210, 0, 211, 212, 213, 0, + 214, 215, 216, -540, 217, 218, 219, 220, 221, 222, + 223, 224, 225, 226, 227, 228, 0, 229, -540, 230, + 231, 232, 233, -540, 234, 0, 235, 0, 0, 0, + 238, 239, 529, 0, 242, 0, 243, 0, 244, 245, + 246, 247, 0, 248, 249, 250, 251, 252, 253, 254, + 0, 256, 257, 258, 259, 0, 260, 261, 262, 263, + 264, 265, 266, 0, 267, 0, 269, 270, 271, 272, + 273, 274, 275, 276, -540, 277, 0, 278, 0, 0, + 281, 0, 283, 284, 285, 286, 287, 288, 0, 0, + 289, 0, 291, 0, -540, 293, 294, 295, 296, 297, + 298, 299, 300, 530, 302, 303, 304, 305, 306, 307, + 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, + 318, 319, 320, 321, 322, 0, 324, 325, 326, 327, + 328, 0, 329, 330, 0, 332, 0, 333, 334, 335, + 336, 337, 338, -540, 339, 340, 0, 0, 341, 342, + 343, 0, -540, 344, 345, 346, 0, 348, 0, 350, + 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, + 361, 0, 0, 0, 0, 362, 363, 364, 0, 366, + 367, 368, 369, 370, 371, 0, 372, 373, 374, 375, + 376, 377, 0, 378, 379, 380, 381, 382, 383, 384, + 385, 386, 387, 0, 388, 389, 390, 391, 392, 393, + 394, 395, 396, 397, 398, 399, 400, 0, 401, 402, + 0, 404, 405, 406, 407, 408, 409, 410, 411, 412, + 413, 414, 415, 416, 417, 418, 419, 420, 0, 0, + 421, 422, 423, 424, 425, 426, 427, 428, 429, 0, + 0, 431, 432, 433, 434, 0, 435, 436, 437, 438, + 439, 440, 441, 442, 443, 444, 445, 446, 531, 448, + 449, 0, 0, 450, 451, 0, 452, 0, 454, 455, + 456, 457, 458, 0, 459, 460, 461, 0, 0, 462, + 463, 464, 465, 466, 0, 467, 468, 469, 470, 471, + 472, 473, 474, -540, 0, 475, 476, 477, 0, 478, + 479, 480, 481, 0, 482, 483, 484, 485, 486, 487, + 488, 489, 0, 490, 0, 492, 493, 494, 495, 496, + 497, 498, 0, 0, 499, 0, 0, 500, 501, 502, + 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, + 513, 514, 515, 516, 517, 518, 519, 520, 528, 0, + 554, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 1177, 0, 118, 119, 120, + 121, 122, 123, 124, 125, 0, 126, 127, 128, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 130, 131, + 0, 132, 133, 134, 0, 136, 137, 138, 139, 140, + 0, 142, 143, 0, 144, 145, 146, 147, 148, 149, + 0, 0, 150, 151, 152, 153, 154, 155, 156, 0, + 157, 158, 159, 160, 161, 0, 0, 0, 163, 164, + 165, 166, 167, 168, 0, 170, 171, 172, 0, 173, + 174, 175, 176, 177, 178, 0, 0, 180, 181, 182, + 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, + 193, 194, 0, 195, 0, 196, 197, 198, 199, 200, + 201, 0, 0, 202, 203, 204, 205, 0, 0, 206, + 207, 208, 209, 210, 0, 211, 212, 213, 0, 214, + 215, 216, 0, 217, 218, 219, 220, 221, 222, 223, + 224, 225, 226, 227, 228, 0, 229, 0, 230, 231, + 232, 233, 0, 234, 0, 235, 0, 0, 0, 238, + 239, 529, 0, 242, 0, 243, 0, 244, 245, 246, + 247, 0, 248, 249, 250, 251, 252, 253, 254, 0, + 256, 257, 258, 259, 0, 260, 261, 262, 263, 264, + 265, 266, 0, 267, 0, 269, 270, 271, 272, 273, + 274, 275, 276, 0, 277, 0, 278, 0, 0, 281, + 0, 283, 284, 285, 286, 287, 288, 0, 0, 289, + 0, 291, 0, 0, 293, 294, 295, 296, 297, 298, + 299, 300, 530, 302, 303, 304, 305, 306, 307, 308, + 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, + 319, 320, 321, 322, 0, 324, 325, 326, 327, 328, + 0, 329, 330, 0, 332, 0, 333, 334, 335, 336, + 337, 338, 0, 339, 340, 0, 0, 341, 342, 343, + 0, 0, 344, 345, 346, 0, 348, 0, 350, 351, + 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, + 0, 0, 0, 0, 362, 363, 364, 0, 366, 367, + 368, 369, 370, 371, 0, 372, 373, 374, 375, 376, + 377, 0, 378, 379, 380, 381, 382, 383, 384, 385, + 386, 387, 0, 388, 389, 390, 391, 392, 393, 394, + 395, 396, 397, 398, 399, 400, 0, 401, 402, 0, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, - 414, -1, -1, 417, 418, -1, 420, 421, 422, 423, - 424, 425, 426, -1, 428, 429, 430, -1, -1, 433, - 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, - 444, 445, 446, -1, -1, 449, 450, 451, -1, 453, - 454, 455, 456, -1, 458, 459, 460, 461, 462, 463, - 464, 465, -1, 467, 468, 469, 470, 471, 472, 473, - 474, 475, -1, -1, 478, -1, -1, 481, 482, 483, - 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, - 494, 495, 496, 497, 498, 499, 500, 501, 502, -1, - -1, -1, -1, -1, -1, 509, 510, 511, -1, -1, - -1, -1, 516, -1, 518, -1, -1, -1, -1, 523, - 524, 525, 526, 527, 3, 4, 5, 6, 7, 8, - 9, 10, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 22, 23, 24, 25, 26, 27, 28, - 29, -1, 31, 32, 33, -1, -1, -1, -1, -1, - 39, -1, -1, 42, 43, 44, -1, 46, 47, 48, - 49, 50, 51, 52, 53, 54, 55, 56, 57, -1, - 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, - 69, 70, 71, 72, 73, -1, 75, 76, 77, 78, - 79, -1, 81, -1, 83, 84, 85, 86, 87, 88, - 89, 90, 91, 92, -1, 94, 95, 96, 97, 98, - 99, -1, 101, 102, 103, 104, 105, 106, 107, 108, - 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, - -1, 120, 121, 122, 123, 124, 125, -1, -1, 128, - 129, 130, 131, -1, -1, 134, 135, 136, 137, 138, - -1, 140, 141, 142, -1, 144, 145, 146, -1, 148, - 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, - 159, 160, 161, -1, 163, 164, 165, 166, -1, 168, - -1, 170, 171, -1, 173, 174, 175, 176, 177, 178, - -1, 180, -1, 182, 183, 184, 185, -1, 187, 188, - 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, - -1, 200, 201, 202, 203, 204, 205, 206, -1, 208, - 209, 210, 211, 212, 213, 214, 215, 216, 217, -1, - 219, -1, 221, 222, 223, 224, 225, 226, 227, 228, - 229, 230, 231, -1, -1, 234, 235, 236, 237, -1, - 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, + 414, 415, 416, 417, 418, 419, 420, 0, 0, 421, + 422, 423, 424, 425, 426, 427, 428, 429, 0, 0, + 431, 432, 433, 434, 0, 435, 436, 437, 438, 439, + 440, 441, 442, 443, 444, 445, 446, 531, 448, 449, + 0, 0, 450, 451, 0, 452, 0, 454, 455, 456, + 457, 458, 0, 459, 460, 461, 0, 0, 462, 463, + 464, 465, 466, 0, 467, 468, 469, 470, 471, 472, + 473, 474, 0, 0, 475, 476, 477, 0, 478, 479, + 480, 481, 0, 482, 483, 484, 485, 486, 487, 488, + 489, 0, 490, 0, 492, 493, 494, 495, 496, 497, + 498, 0, 0, 499, 0, 0, 500, 501, 502, 503, + 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, + 514, 515, 516, 517, 518, 519, 520, 974, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 2492, 3306, 0, 118, 119, 120, 121, + 122, 123, 124, 125, 0, 126, 127, 128, 3, 4, + 0, 565, 0, 0, 0, 0, 570, 130, 131, 0, + 132, 133, 134, 572, 136, 137, 138, 573, 574, 575, + 576, 577, 0, 144, 145, 146, 147, 148, 149, 0, + 0, 150, 151, 152, 153, 581, 582, 156, 0, 157, + 158, 159, 160, 584, 0, 586, 0, 588, 164, 165, + 166, 167, 168, 589, 170, 171, 172, 0, 173, 174, + 175, 176, 177, 178, 0, 592, 180, 181, 182, 183, + 184, 185, 186, 187, 188, 189, 594, 191, 192, 595, + 194, 0, 195, 0, 196, 197, 198, 199, 200, 201, + 14, 15, 202, 203, 204, 205, 0, 0, 206, 207, + 208, 209, 210, 0, 211, 212, 213, 0, 214, 215, + 216, 0, 217, 218, 219, 220, 605, 222, 223, 224, + 225, 226, 227, 606, 0, 229, 0, 230, 231, 609, + 233, 0, 234, 0, 235, 612, 23, 614, 238, 239, + 615, 616, 242, 0, 243, 0, 619, 620, 246, 247, + 0, 248, 249, 250, 251, 252, 253, 254, 622, 256, + 257, 258, 259, 0, 260, 261, 262, 263, 264, 265, + 266, 0, 267, 625, 626, 270, 271, 272, 273, 274, + 627, 628, 0, 630, 0, 278, 632, 633, 281, 634, + 283, 284, 285, 286, 287, 288, 0, 0, 289, 637, + 291, 638, 0, 293, 294, 295, 296, 297, 298, 299, + 300, 640, 302, 303, 304, 305, 306, 307, 308, 309, + 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, + 320, 321, 641, 642, 643, 325, 326, 327, 644, 0, + 329, 330, 646, 332, 0, 648, 334, 649, 336, 337, + 338, 0, 339, 340, 0, 0, 341, 342, 343, 0, + 0, 344, 345, 655, 656, 348, 657, 658, 351, 352, + 353, 354, 355, 356, 357, 358, 359, 360, 361, 26, + 27, 28, 0, 362, 363, 663, 664, 366, 367, 665, + 369, 370, 371, 0, 372, 373, 374, 375, 376, 377, + 0, 378, 379, 380, 381, 382, 668, 384, 385, 386, + 387, 0, 388, 389, 390, 391, 392, 393, 394, 395, + 396, 397, 398, 399, 400, 0, 401, 402, 671, 404, + 405, 406, 672, 408, 409, 410, 411, 412, 413, 414, + 415, 416, 417, 418, 419, 420, 33, 674, 421, 422, + 423, 424, 425, 426, 675, 428, 429, 35, 677, 431, + 432, 678, 434, 0, 435, 436, 437, 438, 439, 440, + 441, 442, 443, 444, 445, 446, 680, 448, 681, 37, + 0, 450, 451, 38, 452, 685, 454, 455, 456, 457, + 458, 0, 459, 687, 688, 0, 0, 462, 463, 691, + 465, 692, 0, 467, 468, 694, 470, 471, 472, 473, + 474, 0, 0, 475, 476, 477, 40, 478, 479, 480, + 481, 0, 482, 483, 484, 485, 486, 975, 700, 489, + 0, 490, 702, 492, 493, 494, 495, 496, 497, 498, + 0, 0, 499, 0, 44, 500, 501, 502, 503, 504, + 505, 707, 708, 709, 710, 711, 712, 713, 714, 715, + 716, 717, 517, 518, 519, 520, 0, 117, 45, 554, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 46, 0, 0, 0, 118, 119, 120, 121, + 122, 123, 124, 125, 0, 126, 127, 128, 0, 0, + 0, 0, 0, 0, 0, 0, 129, 130, 131, 0, + 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, + 142, 143, 0, 144, 145, 146, 147, 148, 149, 0, + 790, 150, 151, 152, 153, 154, 155, 156, 0, 157, + 158, 159, 160, 791, 0, 792, 0, 163, 164, 165, + 166, 167, 168, 169, 170, 171, 172, 0, 173, 174, + 175, 176, 177, 178, 0, 179, 180, 181, 182, 183, + 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, + 194, 0, 195, 0, 196, 197, 198, 199, 200, 201, + 14, 15, 202, 203, 204, 205, 0, 0, 206, 207, + 208, 209, 210, 0, 211, 212, 213, 0, 214, 215, + 216, 0, 217, 218, 219, 220, 221, 222, 223, 224, + 225, 226, 227, 793, 0, 229, 0, 230, 231, 232, + 233, 0, 234, 0, 235, 236, 23, 237, 238, 239, + 240, 241, 242, 0, 243, 0, 244, 245, 246, 247, + 0, 248, 249, 250, 251, 252, 253, 254, 255, 256, + 257, 258, 259, 0, 260, 261, 262, 263, 264, 265, + 266, 0, 267, 268, 269, 270, 271, 272, 273, 274, + 275, 276, 0, 277, 0, 278, 279, 280, 281, 282, + 283, 284, 285, 286, 287, 288, 794, 0, 289, 290, + 291, 292, 0, 293, 294, 295, 296, 297, 298, 299, + 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, + 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, + 320, 321, 322, 323, 324, 325, 326, 327, 328, 0, + 329, 330, 331, 332, 0, 795, 334, 335, 336, 337, + 338, 0, 339, 340, 0, 796, 341, 342, 343, 0, + 0, 344, 345, 346, 347, 348, 349, 797, 351, 352, + 353, 354, 355, 356, 357, 358, 359, 360, 361, 26, + 27, 28, 0, 362, 363, 798, 365, 366, 367, 368, + 369, 370, 371, 0, 372, 373, 374, 375, 376, 377, + 0, 378, 379, 380, 381, 382, 383, 384, 385, 386, + 387, 0, 388, 389, 390, 391, 392, 393, 394, 395, + 396, 397, 398, 399, 400, 0, 401, 402, 403, 404, + 405, 406, 407, 799, 409, 410, 411, 412, 413, 414, + 415, 416, 417, 418, 419, 420, 33, 0, 421, 422, + 423, 424, 425, 426, 427, 428, 429, 35, 430, 431, + 432, 433, 434, 0, 435, 436, 437, 438, 439, 440, + 441, 442, 443, 444, 445, 446, 447, 448, 800, 37, + 0, 450, 451, 38, 452, 453, 454, 455, 456, 457, + 458, 0, 459, 460, 461, 0, 0, 462, 463, 801, + 465, 802, 0, 467, 468, 803, 470, 471, 472, 473, + 474, 0, 0, 475, 476, 477, 40, 478, 479, 480, + 481, 0, 482, 483, 484, 485, 486, 804, 488, 489, + 0, 490, 491, 492, 493, 494, 495, 496, 497, 498, + 0, 0, 499, 0, 44, 500, 501, 502, 503, 504, + 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, + 515, 516, 517, 518, 519, 520, 0, 117, 45, 554, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 805, 0, 0, 0, 118, 119, 120, 121, + 122, 123, 124, 125, 0, 126, 127, 128, 0, 0, + 0, 0, 0, 0, 0, 0, 129, 130, 131, 0, + 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, + 142, 143, 0, 144, 145, 146, 147, 148, 149, 0, + 790, 150, 151, 152, 153, 154, 155, 156, 0, 157, + 158, 159, 160, 791, 0, 792, 0, 163, 164, 165, + 166, 167, 168, 169, 170, 171, 172, 0, 173, 174, + 175, 176, 177, 178, 0, 179, 180, 181, 182, 183, + 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, + 194, 0, 195, 0, 196, 197, 198, 199, 200, 201, + 0, 0, 202, 203, 204, 205, 0, 0, 206, 207, + 208, 209, 210, 0, 211, 212, 213, 0, 214, 215, + 216, 0, 217, 218, 219, 220, 221, 222, 223, 224, + 225, 226, 227, 793, 0, 229, 0, 230, 231, 232, + 233, 0, 234, 0, 235, 236, 0, 237, 238, 239, + 240, 241, 242, 0, 243, 0, 244, 245, 246, 247, + 0, 248, 249, 250, 251, 252, 253, 254, 255, 256, + 257, 258, 259, 0, 260, 261, 262, 263, 264, 265, + 266, 0, 267, 268, 269, 270, 271, 272, 273, 274, + 275, 276, 0, 277, 0, 278, 279, 280, 281, 282, + 283, 284, 285, 286, 287, 288, 794, 0, 289, 290, + 291, 292, 0, 293, 294, 295, 296, 297, 298, 299, + 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, + 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, + 320, 321, 322, 323, 324, 325, 326, 327, 328, 0, + 329, 330, 331, 332, 0, 795, 334, 335, 336, 337, + 338, 0, 339, 340, 0, 796, 341, 342, 343, 0, + 0, 344, 345, 346, 347, 348, 349, 797, 351, 352, + 353, 354, 355, 356, 357, 358, 359, 360, 361, 0, + 0, 0, 0, 362, 363, 798, 365, 366, 367, 368, + 369, 370, 371, 0, 372, 373, 374, 375, 376, 377, + 0, 378, 379, 380, 381, 382, 383, 384, 385, 386, + 387, 0, 388, 389, 390, 391, 392, 393, 394, 395, + 396, 397, 398, 399, 400, 0, 401, 402, 403, 404, + 405, 406, 407, 799, 409, 410, 411, 412, 413, 414, + 415, 416, 417, 418, 419, 420, 0, 0, 421, 422, + 423, 424, 425, 426, 427, 428, 429, 0, 430, 431, + 432, 433, 434, 0, 435, 436, 437, 438, 439, 440, + 441, 442, 443, 444, 445, 446, 447, 448, 800, 0, + 0, 450, 451, 0, 452, 453, 454, 455, 456, 457, + 458, 0, 459, 460, 461, 0, 0, 462, 463, 801, + 465, 802, 0, 467, 468, 803, 470, 471, 472, 473, + 474, 0, 0, 475, 476, 477, 0, 478, 479, 480, + 481, 0, 482, 483, 484, 485, 486, 804, 488, 489, + 0, 490, 491, 492, 493, 494, 495, 496, 497, 498, + 0, 0, 499, 0, 0, 500, 501, 502, 503, 504, + 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, + 515, 516, 517, 518, 519, 520, 117, 0, 554, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 805, 0, 0, 118, 119, 120, 121, 122, + 123, 124, 125, 0, 126, 127, 128, 0, 0, 0, + 0, 0, 0, 0, 0, 129, 130, 131, 0, 132, + 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, + 143, 0, 144, 145, 146, 147, 148, 149, 0, 790, + 150, 151, 152, 153, 154, 155, 156, 0, 157, 158, + 159, 160, 791, 0, 792, 0, 163, 164, 165, 166, + 167, 168, 169, 170, 171, 172, 0, 173, 174, 175, + 176, 177, 178, 0, 179, 180, 181, 182, 183, 184, + 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, + 0, 195, 0, 196, 197, 198, 199, 200, 201, 0, + 0, 202, 203, 204, 205, 0, 0, 206, 207, 208, + 209, 210, 0, 211, 212, 213, 0, 214, 215, 216, + 0, 217, 218, 219, 220, 221, 222, 223, 224, 225, + 226, 227, 793, 0, 229, 0, 230, 231, 232, 233, + 0, 234, 0, 235, 236, 0, 237, 238, 239, 240, + 241, 242, 0, 243, 0, 244, 245, 246, 247, 0, + 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, + 258, 259, 0, 260, 261, 262, 263, 264, 265, 266, + 0, 267, 268, 269, 270, 271, 272, 273, 274, 275, + 276, 0, 277, 0, 278, 279, 280, 281, 282, 283, + 284, 285, 286, 287, 288, 0, 0, 289, 290, 291, + 292, 0, 293, 294, 295, 296, 297, 298, 299, 300, + 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, + 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, + 321, 322, 323, 324, 325, 326, 327, 328, 0, 329, + 330, 331, 332, 0, 795, 334, 335, 336, 337, 338, + 0, 339, 340, 0, 796, 341, 342, 343, 0, 0, + 344, 345, 346, 347, 348, 349, 797, 351, 352, 353, + 354, 355, 356, 357, 358, 359, 360, 361, 0, 0, + 0, 0, 362, 363, 798, 365, 366, 367, 368, 369, + 370, 371, 0, 372, 373, 374, 375, 376, 377, 0, + 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, + 0, 388, 389, 390, 391, 392, 393, 394, 395, 396, + 397, 398, 399, 400, 0, 401, 402, 403, 404, 405, + 406, 407, 799, 409, 410, 411, 412, 413, 414, 415, + 416, 417, 418, 419, 420, 0, 0, 421, 422, 423, + 424, 425, 426, 427, 428, 429, 0, 430, 431, 432, + 433, 434, 0, 435, 436, 437, 438, 439, 440, 441, + 442, 443, 444, 445, 446, 447, 448, 800, 0, 0, + 450, 451, 0, 452, 453, 454, 455, 456, 457, 458, + 0, 459, 460, 461, 0, 0, 462, 463, 801, 465, + 802, 0, 467, 468, 803, 470, 471, 472, 473, 474, + 0, 0, 475, 476, 477, 0, 478, 479, 480, 481, + 0, 482, 483, 484, 485, 486, 487, 488, 489, 0, + 490, 491, 492, 493, 494, 495, 496, 497, 498, 0, + 0, 499, 0, 0, 500, 501, 502, 503, 504, 505, + 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, + 516, 517, 518, 519, 520, 117, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 1018, 0, 0, 118, 119, 120, 121, 122, 123, + 124, 125, 0, 126, 127, 128, 0, 0, 0, 0, + 0, 0, 0, 0, 129, 130, 131, 0, 132, 133, + 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, + 0, 144, 145, 146, 147, 148, 149, 0, 790, 150, + 151, 152, 153, 154, 155, 156, 0, 157, 158, 159, + 160, 791, 0, 792, 0, 163, 164, 165, 166, 167, + 168, 169, 170, 171, 172, 0, 173, 174, 175, 176, + 177, 178, 0, 179, 180, 181, 182, 183, 184, 185, + 186, 187, 188, 189, 190, 191, 192, 193, 194, 0, + 195, 0, 196, 197, 198, 199, 200, 201, 0, 0, + 202, 203, 204, 205, 0, 0, 206, 207, 208, 209, + 210, 0, 211, 212, 213, 0, 214, 215, 216, 0, + 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, + 227, 793, 0, 229, 0, 230, 231, 232, 233, 0, + 234, 0, 235, 236, 0, 237, 238, 239, 240, 241, + 242, 0, 243, 0, 244, 245, 246, 247, 0, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, - 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, - 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, - 279, 280, 281, 282, 283, 284, 285, 286, -1, 288, - 289, -1, -1, 292, 293, 294, -1, -1, 297, 298, - 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, - 309, 310, 311, 312, 313, 314, -1, -1, -1, -1, - 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, - -1, 330, 331, 332, 333, 334, 335, -1, 337, 338, - 339, 340, 341, 342, 343, 344, 345, 346, -1, 348, - 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, - 359, 360, -1, 362, 363, 364, 365, 366, 367, 368, - 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, - 379, 380, 381, -1, -1, 384, 385, 386, 387, 388, - 389, 390, 391, 392, -1, 394, 395, 396, 397, 398, - -1, 400, 401, 402, 403, 404, 405, 406, 407, 408, - 409, 410, 411, 412, 413, 414, -1, -1, 417, 418, - -1, 420, 421, 422, 423, 424, 425, 426, -1, 428, - 429, 430, -1, -1, 433, 434, 435, 436, 437, 438, - 439, 440, 441, 442, 443, 444, 445, 446, -1, -1, - 449, 450, 451, -1, 453, 454, 455, 456, -1, 458, - 459, 460, 461, 462, 463, 464, 465, -1, 467, 468, - 469, 470, 471, 472, 473, 474, 475, -1, -1, 478, - -1, -1, 481, 482, 483, 484, 485, 486, 487, 488, - 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, - 499, 500, 501, 502, -1, -1, -1, -1, -1, -1, - 509, 510, 511, -1, -1, -1, -1, 516, -1, 518, - -1, -1, -1, -1, -1, 524, 525, 526, 527, 3, - 4, 5, 6, 7, 8, 9, 10, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 22, 23, - 24, 25, 26, 27, 28, 29, -1, 31, 32, 33, - -1, -1, -1, -1, -1, 39, -1, -1, 42, 43, - 44, -1, 46, 47, 48, 49, 50, 51, 52, 53, - 54, 55, 56, 57, -1, 59, 60, 61, 62, 63, - 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, - -1, 75, 76, 77, 78, 79, -1, 81, -1, 83, - 84, 85, 86, 87, 88, 89, 90, 91, 92, -1, - 94, 95, 96, 97, 98, 99, -1, 101, 102, 103, - 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, - 114, 115, 116, 117, 118, -1, 120, 121, 122, 123, - 124, 125, -1, -1, 128, 129, 130, 131, -1, -1, - 134, 135, 136, 137, 138, -1, 140, 141, 142, -1, - 144, 145, 146, -1, 148, 149, 150, 151, 152, 153, - 154, 155, 156, 157, 158, 159, 160, 161, -1, 163, - 164, 165, 166, -1, 168, -1, 170, 171, -1, 173, - 174, 175, 176, 177, 178, -1, 180, -1, 182, 183, - 184, 185, -1, 187, 188, 189, 190, 191, 192, 193, - 194, 195, 196, 197, 198, -1, 200, 201, 202, 203, - 204, 205, 206, -1, 208, 209, 210, 211, 212, 213, - 214, 215, 216, 217, -1, 219, -1, 221, 222, 223, - 224, 225, 226, 227, 228, 229, 230, 231, -1, -1, - 234, 235, 236, 237, -1, 239, 240, 241, 242, 243, - 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, - 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, - 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, - 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, - 284, 285, 286, -1, 288, 289, -1, -1, 292, 293, - 294, -1, -1, 297, 298, 299, 300, 301, 302, 303, + 259, 0, 260, 261, 262, 263, 264, 265, 266, 0, + 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, + 0, 277, 0, 278, 279, 280, 281, 282, 283, 284, + 285, 286, 287, 288, 0, 0, 289, 290, 291, 292, + 0, 293, 294, 295, 296, 297, 298, 299, 300, 301, + 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, + 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, + 322, 323, 324, 325, 326, 327, 328, 0, 329, 330, + 331, 332, 0, 795, 334, 335, 336, 337, 338, 0, + 339, 340, 0, 0, 341, 342, 343, 0, 0, 344, + 345, 346, 347, 348, 349, 797, 351, 352, 353, 354, + 355, 356, 357, 358, 359, 360, 361, 0, 0, 0, + 0, 362, 363, 798, 365, 366, 367, 368, 369, 370, + 371, 0, 372, 373, 374, 375, 376, 377, 0, 378, + 379, 380, 381, 382, 383, 384, 385, 386, 387, 0, + 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, + 398, 399, 400, 0, 401, 402, 403, 404, 405, 406, + 407, 799, 409, 410, 411, 412, 413, 414, 415, 416, + 417, 418, 419, 420, 0, 0, 421, 422, 423, 424, + 425, 426, 427, 428, 429, 0, 430, 431, 432, 433, + 434, 0, 435, 436, 437, 438, 439, 440, 441, 442, + 443, 444, 445, 446, 447, 448, 800, 0, 0, 450, + 451, 0, 452, 453, 454, 455, 456, 457, 458, 0, + 459, 460, 461, 0, 0, 462, 463, 801, 465, 802, + 0, 467, 468, 803, 470, 471, 472, 473, 474, 0, + 0, 475, 476, 477, 0, 478, 479, 480, 481, 0, + 482, 483, 484, 485, 486, 487, 488, 489, 0, 490, + 491, 492, 493, 494, 495, 496, 497, 498, 0, 0, + 499, 0, 0, 500, 501, 502, 503, 504, 505, 506, + 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, + 517, 518, 519, 520, 117, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 46, 0, 0, 118, 119, 120, 121, 122, 123, 124, + 125, 0, 126, 127, 128, 0, 0, 0, 0, 0, + 0, 0, 0, 129, 130, 131, 0, 132, 133, 134, + 135, 136, 137, 138, 139, 140, 141, 142, 143, 0, + 144, 145, 146, 147, 148, 149, 0, 790, 150, 151, + 152, 153, 154, 155, 156, 0, 157, 158, 159, 160, + 791, 0, 792, 0, 163, 164, 165, 166, 167, 168, + 169, 170, 171, 172, 0, 173, 174, 175, 176, 177, + 178, 0, 179, 180, 181, 182, 183, 184, 185, 186, + 187, 188, 189, 190, 191, 192, 193, 194, 0, 195, + 0, 196, 197, 198, 199, 200, 201, 0, 0, 202, + 203, 204, 205, 0, 0, 206, 207, 208, 209, 210, + 0, 211, 212, 213, 0, 214, 215, 216, 0, 217, + 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, + 793, 0, 229, 0, 230, 231, 232, 233, 0, 234, + 0, 235, 236, 0, 237, 238, 239, 240, 241, 242, + 0, 243, 0, 244, 245, 246, 247, 0, 248, 249, + 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, + 0, 260, 261, 262, 263, 264, 265, 266, 0, 267, + 268, 269, 270, 271, 272, 273, 274, 275, 276, 0, + 277, 0, 278, 279, 280, 281, 282, 283, 284, 285, + 286, 287, 288, 0, 0, 289, 290, 291, 292, 0, + 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, + 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, + 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, + 323, 324, 325, 326, 327, 328, 0, 329, 330, 331, + 332, 0, 795, 334, 335, 336, 337, 338, 0, 339, + 340, 0, 0, 341, 342, 343, 0, 0, 344, 345, + 346, 347, 348, 349, 797, 351, 352, 353, 354, 355, + 356, 357, 358, 359, 360, 361, 0, 0, 0, 0, + 362, 363, 798, 365, 366, 367, 368, 369, 370, 371, + 0, 372, 373, 374, 375, 376, 377, 0, 378, 379, + 380, 381, 382, 383, 384, 385, 386, 387, 0, 388, + 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, + 399, 400, 0, 401, 402, 403, 404, 405, 406, 407, + 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, + 418, 419, 420, 0, 0, 421, 422, 423, 424, 425, + 426, 427, 428, 429, 0, 430, 431, 432, 433, 434, + 0, 435, 436, 437, 438, 439, 440, 441, 442, 443, + 444, 445, 446, 447, 448, 800, 0, 0, 450, 451, + 0, 452, 453, 454, 455, 456, 457, 458, 0, 459, + 460, 461, 0, 0, 462, 463, 801, 465, 802, 0, + 467, 468, 803, 470, 471, 472, 473, 474, 0, 0, + 475, 476, 477, 0, 478, 479, 480, 481, 0, 482, + 483, 484, 485, 486, 487, 488, 489, 0, 490, 491, + 492, 493, 494, 495, 496, 497, 498, 0, 0, 499, + 0, 0, 500, 501, 502, 503, 504, 505, 506, 507, + 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, + 518, 519, 520, 528, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 3395, + 0, 0, 118, 119, 120, 121, 122, 123, 124, 125, + 0, 126, 127, 128, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 130, 131, 0, 132, 133, 134, 0, + 136, 137, 138, 139, 140, 0, 142, 143, 0, 144, + 145, 146, 147, 148, 149, 0, 0, 150, 151, 152, + 153, 154, 155, 156, 0, 157, 158, 159, 160, 161, + 0, 0, 0, 163, 164, 165, 166, 167, 168, 0, + 170, 171, 172, 0, 173, 174, 175, 176, 177, 178, + 0, 0, 180, 181, 182, 183, 184, 185, 186, 187, + 188, 189, 190, 191, 192, 193, 194, 0, 195, 0, + 196, 197, 198, 199, 200, 201, 14, 15, 202, 203, + 204, 205, 0, 0, 206, 207, 208, 209, 210, 0, + 211, 212, 213, 0, 214, 215, 216, 0, 217, 218, + 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, + 0, 229, 0, 230, 231, 232, 233, 0, 234, 0, + 235, 0, 23, 0, 238, 239, 529, 0, 242, 0, + 243, 0, 244, 245, 246, 247, 0, 248, 249, 250, + 251, 252, 253, 254, 0, 256, 257, 258, 259, 0, + 260, 261, 262, 263, 264, 265, 266, 0, 267, 0, + 269, 270, 271, 272, 273, 274, 275, 276, 0, 277, + 0, 278, 0, 0, 281, 0, 283, 284, 285, 286, + 287, 288, 0, 0, 289, 0, 291, 0, 0, 293, + 294, 295, 296, 297, 298, 299, 300, 530, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, - 314, -1, -1, -1, -1, 319, 320, 321, 322, 323, - 324, 325, 326, 327, 328, -1, 330, 331, 332, 333, - 334, 335, -1, 337, 338, 339, 340, 341, 342, 343, - 344, 345, 346, -1, 348, 349, 350, 351, 352, 353, - 354, 355, 356, 357, 358, 359, 360, -1, 362, 363, - 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, - 374, 375, 376, 377, 378, 379, 380, 381, -1, -1, - 384, 385, 386, 387, 388, 389, 390, 391, 392, -1, - 394, 395, 396, 397, 398, -1, 400, 401, 402, 403, - 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, - 414, -1, -1, 417, 418, -1, 420, 421, 422, 423, - 424, 425, 426, -1, 428, 429, 430, -1, -1, 433, - 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, - 444, 445, 446, -1, -1, 449, 450, 451, -1, 453, - 454, 455, 456, -1, 458, 459, 460, 461, 462, 463, - 464, 465, -1, 467, 468, 469, 470, 471, 472, 473, - 474, 475, -1, -1, 478, -1, -1, 481, 482, 483, - 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, - 494, 495, 496, 497, 498, 499, 500, 501, 502, -1, - -1, -1, -1, -1, -1, 509, 510, 511, -1, -1, - -1, -1, 516, -1, 518, -1, -1, -1, -1, -1, - 524, 525, 526, 527, 3, 4, 5, 6, 7, 8, - 9, 10, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 22, 23, 24, 25, 26, 27, 28, - 29, -1, 31, 32, 33, -1, -1, -1, -1, -1, - 39, -1, -1, 42, 43, 44, -1, 46, 47, 48, - 49, 50, 51, 52, 53, 54, 55, 56, 57, -1, - 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, - 69, 70, 71, 72, 73, -1, 75, 76, 77, 78, - 79, -1, 81, -1, 83, 84, 85, 86, 87, 88, - 89, 90, 91, 92, -1, 94, 95, 96, 97, 98, - 99, -1, 101, 102, 103, 104, 105, 106, 107, 108, - 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, - -1, 120, 121, 122, 123, 124, 125, -1, -1, 128, - 129, 130, 131, -1, -1, 134, 135, 136, 137, 138, - -1, 140, 141, 142, -1, 144, 145, 146, -1, 148, - 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, - 159, 160, 161, -1, 163, 164, 165, 166, -1, 168, - -1, 170, 171, -1, 173, 174, 175, 176, 177, 178, - -1, 180, -1, 182, 183, 184, 185, -1, 187, 188, - 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, - -1, 200, 201, 202, 203, 204, 205, 206, -1, 208, - 209, 210, 211, 212, 213, 214, 215, 216, 217, -1, - 219, -1, 221, 222, 223, 224, 225, 226, 227, 228, - 229, 230, 231, -1, -1, 234, 235, 236, 237, -1, - 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, - 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, - 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, - 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, - 279, 280, 281, 282, 283, 284, 285, 286, -1, 288, - 289, -1, -1, 292, 293, 294, -1, -1, 297, 298, - 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, - 309, 310, 311, 312, 313, 314, -1, -1, -1, -1, - 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, - -1, 330, 331, 332, 333, 334, 335, -1, 337, 338, - 339, 340, 341, 342, 343, 344, 345, 346, -1, 348, - 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, - 359, 360, -1, 362, 363, 364, 365, 366, 367, 368, - 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, - 379, 380, 381, -1, -1, 384, 385, 386, 387, 388, - 389, 390, 391, 392, -1, 394, 395, 396, 397, 398, - -1, 400, 401, 402, 403, 404, 405, 406, 407, 408, - 409, 410, 411, 412, 413, 414, -1, -1, 417, 418, - -1, 420, 421, 422, 423, 424, 425, 426, -1, 428, - 429, 430, -1, -1, 433, 434, 435, 436, 437, 438, - 439, 440, 441, 442, 443, 444, 445, 446, -1, -1, - 449, 450, 451, -1, 453, 454, 455, 456, -1, 458, - 459, 460, 461, 462, 463, 464, 465, -1, 467, 468, - 469, 470, 471, 472, 473, 474, 475, -1, -1, 478, - -1, -1, 481, 482, 483, 484, 485, 486, 487, 488, - 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, - 499, 500, 501, 502, -1, -1, -1, -1, -1, -1, - 509, 510, 511, -1, -1, -1, -1, 516, -1, 518, - -1, -1, -1, -1, -1, 524, 525, 526, 527, 3, - 4, 5, 6, 7, 8, 9, 10, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 22, 23, - 24, 25, 26, 27, 28, 29, -1, 31, 32, 33, - -1, -1, -1, -1, -1, 39, -1, -1, 42, 43, - 44, -1, 46, 47, 48, 49, 50, 51, 52, 53, - 54, 55, 56, 57, -1, 59, 60, 61, 62, 63, - 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, - -1, 75, 76, 77, 78, 79, -1, 81, -1, 83, - 84, 85, 86, 87, 88, 89, 90, 91, 92, -1, - 94, 95, 96, 97, 98, 99, -1, 101, 102, 103, - 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, - 114, 115, 116, 117, 118, -1, 120, 121, 122, 123, - 124, 125, -1, -1, 128, 129, 130, 131, -1, -1, - 134, 135, 136, 137, 138, -1, 140, 141, 142, -1, - 144, 145, 146, -1, 148, 149, 150, 151, 152, 153, - 154, 155, 156, 157, 158, 159, 160, 161, -1, 163, - 164, 165, 166, -1, 168, -1, 170, 171, -1, 173, - 174, 175, 176, 177, 178, -1, 180, -1, 182, 183, - 184, 185, -1, 187, 188, 189, 190, 191, 192, 193, - 194, 195, 196, 197, 198, -1, 200, 201, 202, 203, - 204, 205, 206, -1, 208, 209, 210, 211, 212, 213, - 214, 215, 216, 217, -1, 219, -1, 221, 222, 223, - 224, 225, 226, 227, 228, 229, 230, 231, -1, -1, - 234, 235, 236, 237, -1, 239, 240, 241, 242, 243, - 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, - 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, - 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, - 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, - 284, 285, 286, -1, 288, 289, -1, -1, 292, 293, - 294, -1, -1, 297, 298, 299, 300, 301, 302, 303, + 314, 315, 316, 317, 318, 319, 320, 321, 322, 0, + 324, 325, 326, 327, 328, 0, 329, 330, 0, 332, + 0, 333, 334, 335, 336, 337, 338, 0, 339, 340, + 0, 0, 341, 342, 343, 0, 0, 344, 345, 346, + 0, 348, 0, 350, 351, 352, 353, 354, 355, 356, + 357, 358, 359, 360, 361, 26, 27, 28, 0, 362, + 363, 364, 0, 366, 367, 368, 369, 370, 371, 0, + 372, 373, 374, 375, 376, 377, 0, 378, 379, 380, + 381, 382, 383, 384, 385, 386, 387, 0, 388, 389, + 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, + 400, 0, 401, 402, 0, 404, 405, 406, 407, 408, + 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, + 419, 420, 33, 0, 421, 422, 423, 424, 425, 426, + 427, 428, 429, 35, 0, 431, 432, 433, 434, 0, + 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, + 445, 446, 531, 448, 449, 37, 0, 450, 451, 38, + 452, 0, 454, 455, 456, 457, 458, 0, 459, 460, + 461, 0, 0, 462, 463, 464, 465, 466, 0, 467, + 468, 469, 470, 471, 472, 473, 474, 0, 0, 475, + 476, 477, 40, 478, 479, 480, 481, 0, 482, 483, + 484, 485, 486, 804, 488, 489, 0, 490, 0, 492, + 493, 494, 495, 496, 497, 498, 0, 0, 499, 0, + 44, 500, 501, 502, 503, 504, 505, 506, 507, 508, + 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, + 519, 520, 0, 528, 45, 554, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 46, 0, + 0, 0, 118, 119, 120, 121, 122, 123, 124, 125, + 894, 126, 127, 128, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 130, 131, 0, 132, 133, 134, 0, + 136, 137, 138, 139, 140, 0, 142, 143, 0, 144, + 145, 146, 147, 148, 149, 0, 0, 150, 151, 152, + 153, 154, 155, 156, 0, 157, 158, 159, 160, 161, + 0, 0, 0, 163, 164, 165, 166, 167, 168, 0, + 170, 171, 172, 0, 173, 174, 175, 176, 177, 178, + 0, 0, 180, 181, 182, 183, 184, 185, 186, 187, + 188, 189, 190, 191, 192, 193, 194, 0, 195, 0, + 196, 197, 198, 199, 200, 201, 0, 0, 202, 203, + 204, 205, 0, 0, 206, 207, 208, 209, 210, 0, + 211, 212, 213, 0, 214, 215, 216, 0, 217, 218, + 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, + 0, 229, 0, 230, 231, 232, 233, 0, 234, 0, + 235, 0, 23, 0, 238, 239, 529, 0, 242, 0, + 243, 0, 244, 245, 246, 247, 0, 248, 249, 250, + 251, 252, 253, 254, 0, 256, 257, 258, 259, 0, + 260, 261, 262, 263, 264, 265, 266, 0, 267, 0, + 269, 270, 271, 272, 273, 274, 275, 276, 0, 277, + 0, 278, 0, 0, 281, 0, 283, 284, 285, 286, + 287, 288, 0, 0, 289, 0, 291, 0, 0, 293, + 294, 295, 296, 297, 298, 299, 300, 530, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, - 314, -1, -1, -1, -1, 319, 320, 321, 322, 323, - 324, 325, 326, 327, 328, -1, 330, 331, 332, 333, - 334, 335, -1, 337, 338, 339, 340, 341, 342, 343, - 344, 345, 346, -1, 348, 349, 350, 351, 352, 353, - 354, 355, 356, 357, 358, 359, 360, -1, 362, 363, - 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, - 374, 375, 376, 377, 378, 379, 380, 381, -1, -1, - 384, 385, 386, 387, 388, 389, 390, 391, 392, -1, - 394, 395, 396, 397, 398, -1, 400, 401, 402, 403, + 314, 315, 316, 317, 318, 319, 320, 321, 322, 0, + 324, 325, 326, 327, 328, 0, 329, 330, 0, 332, + 0, 333, 334, 335, 336, 337, 338, 0, 339, 340, + 0, 0, 341, 342, 343, 0, 0, 344, 345, 346, + 0, 348, 0, 350, 351, 352, 353, 354, 355, 356, + 357, 358, 359, 360, 361, 26, 27, 28, 0, 362, + 363, 364, 0, 366, 367, 368, 369, 370, 371, 0, + 372, 373, 374, 375, 376, 377, 0, 378, 379, 380, + 381, 382, 383, 384, 385, 386, 387, 0, 388, 389, + 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, + 400, 0, 401, 402, 0, 404, 405, 406, 407, 408, + 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, + 419, 420, 33, 0, 421, 422, 423, 424, 425, 426, + 427, 428, 429, 0, 0, 431, 432, 433, 434, 0, + 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, + 445, 446, 531, 448, 449, 0, 0, 450, 451, 38, + 452, 0, 454, 455, 456, 457, 458, 0, 459, 895, + 461, 0, 0, 896, 463, 464, 465, 466, 0, 467, + 468, 469, 470, 471, 472, 473, 474, 0, 0, 475, + 476, 477, 40, 478, 479, 480, 481, 0, 482, 483, + 484, 485, 486, 804, 488, 489, 0, 490, 0, 492, + 493, 494, 495, 496, 497, 498, 0, 0, 499, 0, + 44, 500, 501, 502, 503, 504, 505, 506, 507, 508, + 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, + 519, 520, 0, 528, 45, 554, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 46, 0, + 0, 0, 118, 119, 120, 121, 122, 123, 124, 125, + 0, 126, 127, 128, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 130, 131, 0, 132, 133, 134, 0, + 136, 137, 138, 139, 140, 0, 142, 143, 0, 144, + 145, 146, 147, 148, 149, 0, 0, 150, 151, 152, + 153, 154, 155, 156, 0, 157, 158, 159, 160, 161, + 0, 0, 0, 163, 164, 165, 166, 167, 168, 0, + 170, 171, 172, 0, 173, 174, 175, 176, 177, 178, + 0, 0, 180, 181, 182, 183, 184, 185, 186, 187, + 188, 189, 190, 191, 192, 193, 194, 0, 195, 0, + 196, 197, 198, 199, 200, 201, 0, 0, 202, 203, + 204, 205, 0, 0, 206, 207, 208, 209, 210, 0, + 211, 212, 213, 0, 214, 215, 216, 0, 217, 218, + 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, + 0, 229, 0, 230, 231, 232, 233, 0, 234, 0, + 235, 0, 23, 0, 238, 239, 529, 0, 242, 0, + 243, 0, 244, 245, 246, 247, 0, 248, 249, 250, + 251, 252, 253, 254, 0, 256, 257, 258, 259, 0, + 260, 261, 262, 263, 264, 265, 266, 0, 267, 0, + 269, 270, 271, 272, 273, 274, 275, 276, 0, 277, + 0, 278, 0, 0, 281, 0, 283, 284, 285, 286, + 287, 288, 0, 0, 289, 0, 291, 0, 0, 293, + 294, 295, 296, 297, 298, 299, 300, 530, 302, 303, + 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, + 314, 315, 316, 317, 318, 319, 320, 321, 322, 0, + 324, 325, 326, 327, 328, 0, 329, 330, 0, 332, + 0, 333, 334, 335, 336, 337, 338, 0, 339, 340, + 0, 0, 341, 342, 343, 0, 0, 344, 345, 346, + 0, 348, 0, 350, 351, 352, 353, 354, 355, 356, + 357, 358, 359, 360, 361, 26, 27, 28, 0, 362, + 363, 364, 0, 366, 367, 368, 369, 370, 371, 0, + 372, 373, 374, 375, 376, 377, 0, 378, 379, 380, + 381, 382, 383, 384, 385, 386, 387, 0, 388, 389, + 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, + 400, 0, 401, 402, 0, 404, 405, 406, 407, 408, + 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, + 419, 420, 33, 0, 421, 422, 423, 424, 425, 426, + 427, 428, 429, 0, 0, 431, 432, 433, 434, 0, + 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, + 445, 446, 531, 448, 449, 0, 0, 450, 451, 38, + 452, 0, 454, 455, 456, 457, 458, 0, 459, 460, + 461, 0, 0, 462, 463, 464, 465, 466, 0, 467, + 468, 469, 470, 471, 472, 473, 474, 0, 0, 475, + 476, 477, 40, 478, 479, 480, 481, 0, 482, 483, + 484, 485, 486, 804, 488, 489, 0, 490, 0, 492, + 493, 494, 495, 496, 497, 498, 0, 0, 499, 0, + 44, 500, 501, 502, 503, 504, 505, 506, 507, 508, + 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, + 519, 520, 0, 528, 45, 554, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 46, 0, + 0, 0, 118, 119, 120, 121, 122, 123, 124, 125, + 0, 126, 127, 128, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 130, 131, 0, 132, 133, 134, 0, + 136, 137, 138, 139, 140, 0, 142, 143, 0, 144, + 145, 146, 147, 148, 149, 0, 0, 150, 151, 152, + 153, 154, 155, 156, 0, 157, 158, 159, 160, 161, + 0, 0, 0, 163, 164, 165, 166, 167, 168, 0, + 170, 171, 172, 0, 173, 174, 175, 176, 177, 178, + 0, 0, 180, 181, 182, 183, 184, 185, 186, 187, + 188, 189, 190, 191, 192, 193, 194, 0, 195, 0, + 196, 197, 198, 199, 200, 201, 0, 0, 202, 203, + 204, 205, 0, 0, 206, 207, 208, 209, 210, 0, + 211, 212, 213, 0, 214, 215, 216, 0, 217, 218, + 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, + 0, 229, 0, 230, 231, 232, 233, 0, 234, 0, + 235, 0, 0, 0, 238, 239, 529, 0, 242, 0, + 243, 0, 244, 245, 246, 247, 0, 248, 249, 250, + 251, 252, 253, 254, 0, 256, 257, 258, 259, 0, + 260, 261, 262, 263, 264, 265, 266, 0, 267, 0, + 269, 270, 271, 272, 273, 274, 275, 276, 0, 277, + 0, 278, 0, 0, 281, 0, 283, 284, 285, 286, + 287, 288, 0, 0, 289, 0, 291, 0, 0, 293, + 294, 295, 296, 297, 298, 299, 300, 530, 302, 303, + 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, + 314, 315, 316, 317, 318, 319, 320, 321, 322, 0, + 324, 325, 326, 327, 328, 0, 329, 330, 0, 332, + 0, 333, 334, 335, 336, 337, 338, 0, 339, 340, + 0, 0, 341, 342, 343, 0, 0, 344, 345, 346, + 0, 348, 0, 350, 351, 352, 353, 354, 355, 356, + 357, 358, 359, 360, 361, 0, 0, 0, 0, 362, + 363, 364, 0, 366, 367, 368, 369, 370, 371, 0, + 372, 373, 374, 375, 376, 377, 0, 378, 379, 380, + 381, 382, 383, 384, 385, 386, 387, 0, 388, 389, + 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, + 400, 0, 401, 402, 0, 404, 405, 406, 407, 408, + 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, + 419, 420, 0, 0, 421, 422, 423, 424, 425, 426, + 427, 428, 429, 0, 0, 431, 432, 433, 434, 0, + 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, + 445, 446, 531, 448, 449, 0, 0, 450, 451, 0, + 452, 0, 454, 455, 456, 457, 458, 0, 459, 460, + 461, 0, 0, 462, 463, 464, 465, 466, 0, 467, + 468, 469, 470, 471, 472, 473, 474, 0, 0, 475, + 476, 477, 0, 478, 479, 480, 481, 0, 482, 483, + 484, 485, 486, 487, 488, 489, 0, 490, 0, 492, + 493, 494, 495, 496, 497, 498, 0, 0, 499, 0, + 0, 500, 501, 502, 503, 504, 505, 506, 507, 508, + 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, + 519, 520, 528, 0, 554, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 994, 0, + 0, 118, 119, 120, 121, 122, 123, 124, 125, 0, + 126, 127, 128, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 130, 131, 0, 132, 133, 134, 0, 136, + 137, 138, 139, 140, 0, 142, 143, 0, 144, 145, + 146, 147, 148, 149, 0, 0, 150, 151, 152, 153, + 154, 155, 156, 0, 157, 158, 159, 160, 161, 0, + 0, 0, 163, 164, 165, 166, 167, 168, 0, 170, + 171, 172, 0, 173, 174, 175, 176, 177, 178, 0, + 0, 180, 181, 182, 183, 184, 185, 186, 187, 188, + 189, 190, 191, 192, 193, 194, 0, 195, 0, 196, + 197, 198, 199, 200, 201, 0, 0, 202, 203, 204, + 205, 0, 0, 206, 207, 208, 209, 210, 0, 211, + 212, 213, 0, 214, 215, 216, 0, 217, 218, 219, + 220, 221, 222, 223, 224, 225, 226, 227, 228, 0, + 229, 0, 230, 231, 232, 233, 0, 234, 0, 235, + 0, 0, 0, 238, 239, 529, 0, 242, 0, 243, + 0, 244, 245, 246, 247, 0, 248, 249, 250, 251, + 252, 253, 254, 0, 256, 257, 258, 259, 0, 260, + 261, 262, 263, 264, 265, 266, 0, 267, 0, 269, + 270, 271, 272, 273, 274, 275, 276, 0, 277, 0, + 278, 0, 0, 281, 0, 283, 284, 285, 286, 287, + 288, 0, 0, 289, 0, 291, 0, 0, 293, 294, + 295, 296, 297, 298, 299, 300, 530, 302, 303, 304, + 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, + 315, 316, 317, 318, 319, 320, 321, 322, 0, 324, + 325, 326, 327, 328, 0, 329, 330, 0, 332, 0, + 333, 334, 335, 336, 337, 338, 0, 339, 340, 0, + 0, 341, 342, 343, 0, 0, 344, 345, 346, 0, + 348, 0, 350, 351, 352, 353, 354, 355, 356, 357, + 358, 359, 360, 361, 0, 0, 0, 0, 362, 363, + 364, 0, 366, 367, 368, 369, 370, 371, 0, 372, + 373, 374, 375, 376, 377, 0, 378, 379, 380, 381, + 382, 383, 384, 385, 386, 387, 0, 388, 389, 390, + 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, + 0, 401, 402, 0, 404, 405, 406, 407, 408, 409, + 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, + 420, 0, 0, 421, 422, 423, 424, 425, 426, 427, + 428, 429, 0, 0, 431, 432, 433, 434, 0, 435, + 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, + 446, 531, 448, 449, 0, 0, 450, 451, 0, 452, + 0, 454, 455, 456, 457, 458, 0, 459, 460, 461, + 0, 0, 462, 463, 464, 465, 466, 0, 467, 468, + 469, 470, 471, 472, 473, 474, 0, 0, 475, 476, + 477, 0, 478, 479, 480, 481, 0, 482, 483, 484, + 485, 486, 487, 488, 489, 0, 490, 0, 492, 493, + 494, 495, 496, 497, 498, 0, 0, 499, 0, 0, + 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, + 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, + 520, 528, 0, 554, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 1493, 0, 0, + 118, 119, 120, 121, 122, 123, 124, 125, 0, 126, + 127, 128, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 130, 131, 0, 132, 133, 134, 0, 136, 137, + 138, 139, 140, 0, 142, 143, 0, 144, 145, 146, + 147, 148, 149, 0, 0, 150, 151, 152, 153, 154, + 155, 156, 0, 157, 158, 159, 160, 161, 0, 0, + 0, 163, 164, 165, 166, 167, 168, 0, 170, 171, + 172, 0, 173, 174, 175, 176, 177, 178, 0, 0, + 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, + 190, 191, 192, 193, 194, 0, 195, 0, 196, 197, + 198, 199, 200, 201, 0, 0, 202, 203, 204, 205, + 0, 0, 206, 207, 208, 209, 210, 0, 211, 212, + 213, 0, 214, 215, 216, 0, 217, 218, 219, 220, + 221, 222, 223, 224, 225, 226, 227, 228, 0, 229, + 0, 230, 231, 232, 233, 0, 234, 0, 235, 0, + 0, 0, 238, 239, 529, 0, 242, 0, 243, 0, + 244, 245, 246, 247, 0, 248, 249, 250, 251, 252, + 253, 254, 0, 256, 257, 258, 259, 0, 260, 261, + 262, 263, 264, 265, 266, 0, 267, 0, 269, 270, + 271, 272, 273, 274, 275, 276, 0, 277, 0, 278, + 0, 0, 281, 0, 283, 284, 285, 286, 287, 288, + 0, 0, 289, 0, 291, 0, 0, 293, 294, 295, + 296, 297, 298, 299, 300, 530, 302, 303, 304, 305, + 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, + 316, 317, 318, 319, 320, 321, 322, 0, 324, 325, + 326, 327, 328, 0, 329, 330, 0, 332, 0, 333, + 334, 335, 336, 337, 338, 0, 339, 340, 0, 0, + 341, 342, 343, 0, 0, 344, 345, 346, 0, 348, + 0, 350, 351, 352, 353, 354, 355, 356, 357, 358, + 359, 360, 361, 0, 0, 0, 0, 362, 363, 364, + 0, 366, 367, 368, 369, 370, 371, 0, 372, 373, + 374, 375, 376, 377, 0, 378, 379, 380, 381, 382, + 383, 384, 385, 386, 387, 0, 388, 389, 390, 391, + 392, 393, 394, 395, 396, 397, 398, 399, 400, 0, + 401, 402, 0, 404, 405, 406, 407, 408, 409, 410, + 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, + 0, 0, 421, 422, 423, 424, 425, 426, 427, 428, + 429, 0, 0, 431, 432, 433, 434, 0, 435, 436, + 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, + 531, 448, 449, 0, 0, 450, 451, 0, 452, 0, + 454, 455, 456, 457, 458, 0, 459, 460, 461, 0, + 0, 462, 463, 464, 465, 466, 0, 467, 468, 469, + 470, 471, 472, 473, 474, 0, 0, 475, 476, 477, + 0, 478, 479, 480, 481, 0, 482, 483, 484, 485, + 486, 487, 488, 489, 0, 490, 0, 492, 493, 494, + 495, 496, 497, 498, 0, 0, 499, 0, 0, 500, + 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, + 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, + 528, 0, 554, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 2101, 0, 0, 118, + 119, 120, 121, 122, 123, 124, 125, 0, 126, 127, + 128, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 130, 131, 0, 132, 133, 134, 0, 136, 137, 138, + 139, 140, 0, 142, 143, 0, 144, 145, 146, 147, + 148, 149, 0, 0, 150, 151, 152, 153, 154, 155, + 156, 0, 157, 158, 159, 160, 161, 0, 0, 0, + 163, 164, 165, 166, 167, 168, 0, 170, 171, 172, + 0, 173, 174, 175, 176, 177, 178, 0, 0, 180, + 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, + 191, 192, 193, 194, 0, 195, 0, 196, 197, 198, + 199, 200, 201, 0, 0, 202, 203, 204, 205, 0, + 0, 206, 207, 208, 209, 210, 0, 211, 212, 213, + 0, 214, 215, 216, 0, 217, 218, 219, 220, 221, + 222, 223, 224, 225, 226, 227, 228, 0, 229, 0, + 230, 231, 232, 233, 0, 234, 0, 235, 0, 0, + 0, 238, 239, 529, 0, 242, 0, 243, 0, 244, + 245, 246, 247, 0, 248, 249, 250, 251, 252, 253, + 254, 0, 256, 257, 258, 259, 0, 260, 261, 262, + 263, 264, 265, 266, 0, 267, 0, 269, 270, 271, + 272, 273, 274, 275, 276, 0, 277, 0, 278, 0, + 0, 281, 0, 283, 284, 285, 286, 287, 288, 0, + 0, 289, 0, 291, 0, 0, 293, 294, 295, 296, + 297, 298, 299, 300, 530, 302, 303, 304, 305, 306, + 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, + 317, 318, 319, 320, 321, 322, 0, 324, 325, 326, + 327, 328, 0, 329, 330, 0, 332, 0, 333, 334, + 335, 336, 337, 338, 0, 339, 340, 0, 0, 341, + 342, 343, 0, 0, 344, 345, 346, 0, 348, 0, + 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, + 360, 361, 0, 0, 0, 0, 362, 363, 364, 0, + 366, 367, 368, 369, 370, 371, 0, 372, 373, 374, + 375, 376, 377, 0, 378, 379, 380, 381, 382, 383, + 384, 385, 386, 387, 0, 388, 389, 390, 391, 392, + 393, 394, 395, 396, 397, 398, 399, 400, 0, 401, + 402, 0, 404, 405, 406, 407, 408, 409, 410, 411, + 412, 413, 414, 415, 416, 417, 418, 419, 420, 0, + 0, 421, 422, 423, 424, 425, 426, 427, 428, 429, + 0, 0, 431, 432, 433, 434, 0, 435, 436, 437, + 438, 439, 440, 441, 442, 443, 444, 445, 446, 531, + 448, 449, 0, 0, 450, 451, 0, 452, 0, 454, + 455, 456, 457, 458, 0, 459, 460, 461, 0, 0, + 462, 463, 464, 465, 466, 0, 467, 468, 469, 470, + 471, 472, 473, 474, 0, 0, 475, 476, 477, 0, + 478, 479, 480, 481, 0, 482, 483, 484, 485, 486, + 487, 488, 489, 0, 490, 0, 492, 493, 494, 495, + 496, 497, 498, 0, 0, 499, 0, 0, 500, 501, + 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, + 512, 513, 514, 515, 516, 517, 518, 519, 520, 528, + 0, 554, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 2248, 0, 0, 118, 119, + 120, 121, 122, 123, 124, 125, 0, 126, 127, 128, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 130, + 131, 0, 132, 133, 134, 0, 136, 137, 138, 139, + 140, 0, 142, 143, 0, 144, 145, 146, 147, 148, + 149, 0, 0, 150, 151, 152, 153, 154, 155, 156, + 0, 157, 158, 159, 160, 161, 0, 0, 0, 163, + 164, 165, 166, 167, 168, 0, 170, 171, 172, 0, + 173, 174, 175, 176, 177, 178, 0, 0, 180, 181, + 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, + 192, 193, 194, 0, 195, 0, 196, 197, 198, 199, + 200, 201, 0, 0, 202, 203, 204, 205, 0, 0, + 206, 207, 208, 209, 210, 0, 211, 212, 213, 0, + 214, 215, 216, 0, 217, 218, 219, 220, 221, 222, + 223, 224, 225, 226, 227, 228, 0, 229, 0, 230, + 231, 232, 233, 0, 234, 0, 235, 0, 0, 0, + 238, 239, 529, 0, 242, 0, 243, 0, 244, 245, + 246, 247, 0, 248, 249, 250, 251, 252, 253, 254, + 0, 256, 257, 258, 259, 0, 260, 261, 262, 263, + 264, 265, 266, 0, 267, 0, 269, 270, 271, 272, + 273, 274, 275, 276, 0, 277, 0, 278, 0, 0, + 281, 0, 283, 284, 285, 286, 287, 288, 0, 0, + 289, 0, 291, 0, 0, 293, 294, 295, 296, 297, + 298, 299, 300, 530, 302, 303, 304, 305, 306, 307, + 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, + 318, 319, 320, 321, 322, 0, 324, 325, 326, 327, + 328, 0, 329, 330, 0, 332, 0, 333, 334, 335, + 336, 337, 338, 0, 339, 340, 0, 0, 341, 342, + 343, 0, 0, 344, 345, 346, 0, 348, 0, 350, + 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, + 361, 0, 0, 0, 0, 362, 363, 364, 0, 366, + 367, 368, 369, 370, 371, 0, 372, 373, 374, 375, + 376, 377, 0, 378, 379, 380, 381, 382, 383, 384, + 385, 386, 387, 0, 388, 389, 390, 391, 392, 393, + 394, 395, 396, 397, 398, 399, 400, 0, 401, 402, + 0, 404, 405, 406, 407, 408, 409, 410, 411, 412, + 413, 414, 415, 416, 417, 418, 419, 420, 0, 0, + 421, 422, 423, 424, 425, 426, 427, 428, 429, 0, + 0, 431, 432, 433, 434, 0, 435, 436, 437, 438, + 439, 440, 441, 442, 443, 444, 445, 446, 531, 448, + 449, 0, 0, 450, 451, 0, 452, 0, 454, 455, + 456, 457, 458, 0, 459, 460, 461, 0, 0, 462, + 463, 464, 465, 466, 0, 467, 468, 469, 470, 471, + 472, 473, 474, 0, 0, 475, 476, 477, 0, 478, + 479, 480, 481, 0, 482, 483, 484, 485, 486, 487, + 488, 489, 0, 490, 0, 492, 493, 494, 495, 496, + 497, 498, 0, 0, 499, 0, 0, 500, 501, 502, + 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, + 513, 514, 515, 516, 517, 518, 519, 520, 528, 0, + 554, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 2492, 0, 0, 118, 119, 120, + 121, 122, 123, 124, 125, 0, 126, 127, 128, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 130, 131, + 0, 132, 133, 134, 0, 136, 137, 138, 139, 140, + 0, 142, 143, 0, 144, 145, 146, 147, 148, 149, + 0, 0, 150, 151, 152, 153, 154, 155, 156, 0, + 157, 158, 159, 160, 161, 0, 0, 0, 163, 164, + 165, 166, 167, 168, 0, 170, 171, 172, 0, 173, + 174, 175, 176, 177, 178, 0, 0, 180, 181, 182, + 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, + 193, 194, 0, 195, 0, 196, 197, 198, 199, 200, + 201, 0, 0, 202, 203, 204, 205, 0, 0, 206, + 207, 208, 209, 210, 0, 211, 212, 213, 0, 214, + 215, 216, 0, 217, 218, 219, 220, 221, 222, 223, + 224, 225, 226, 227, 228, 0, 229, 0, 230, 231, + 232, 233, 0, 234, 0, 235, 0, 0, 0, 238, + 239, 529, 0, 242, 0, 243, 0, 244, 245, 246, + 247, 0, 248, 249, 250, 251, 252, 253, 254, 0, + 256, 257, 258, 259, 0, 260, 261, 262, 263, 264, + 265, 266, 0, 267, 0, 269, 270, 271, 272, 273, + 274, 275, 276, 0, 277, 0, 278, 0, 0, 281, + 0, 283, 284, 285, 286, 287, 288, 0, 0, 289, + 0, 291, 0, 0, 293, 294, 295, 296, 297, 298, + 299, 300, 530, 302, 303, 304, 305, 306, 307, 308, + 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, + 319, 320, 321, 322, 0, 324, 325, 326, 327, 328, + 0, 329, 330, 0, 332, 0, 333, 334, 335, 336, + 337, 338, 0, 339, 340, 0, 0, 341, 342, 343, + 0, 0, 344, 345, 346, 0, 348, 0, 350, 351, + 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, + 0, 0, 0, 0, 362, 363, 364, 0, 366, 367, + 368, 369, 370, 371, 0, 372, 373, 374, 375, 376, + 377, 0, 378, 379, 380, 381, 382, 383, 384, 385, + 386, 387, 0, 388, 389, 390, 391, 392, 393, 394, + 395, 396, 397, 398, 399, 400, 0, 401, 402, 0, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, - 414, -1, -1, 417, 418, -1, 420, 421, 422, 423, - 424, 425, 426, -1, 428, 429, 430, -1, -1, 433, - 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, - 444, 445, 446, -1, -1, 449, 450, 451, -1, 453, - 454, 455, 456, -1, 458, 459, 460, 461, 462, 463, - 464, 465, -1, 467, 468, 469, 470, 471, 472, 473, - 474, 475, -1, -1, 478, -1, -1, 481, 482, 483, - 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, - 494, 495, 496, 497, 498, 499, 500, 501, 502, -1, - -1, -1, -1, -1, -1, 509, 510, 511, -1, -1, - -1, -1, 516, -1, 518, -1, -1, -1, -1, -1, - 524, 525, 526, 527, 3, 4, 5, 6, 7, 8, - 9, 10, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 22, 23, 24, 25, 26, 27, 28, - 29, -1, 31, 32, 33, -1, -1, -1, -1, -1, - 39, -1, -1, 42, 43, 44, -1, 46, 47, 48, - 49, 50, 51, 52, 53, 54, 55, 56, 57, -1, - 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, - 69, 70, 71, 72, 73, -1, 75, 76, 77, 78, - 79, -1, 81, -1, 83, 84, 85, 86, 87, 88, - 89, 90, 91, 92, -1, 94, 95, 96, 97, 98, - 99, -1, 101, 102, 103, 104, 105, 106, 107, 108, - 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, - -1, 120, 121, 122, 123, 124, 125, -1, -1, 128, - 129, 130, 131, -1, -1, 134, 135, 136, 137, 138, - -1, 140, 141, 142, -1, 144, 145, 146, -1, 148, - 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, - 159, 160, 161, -1, 163, 164, 165, 166, -1, 168, - -1, 170, 171, -1, 173, 174, 175, 176, 177, 178, - -1, 180, -1, 182, 183, 184, 185, -1, 187, 188, - 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, - -1, 200, 201, 202, 203, 204, 205, 206, -1, 208, - 209, 210, 211, 212, 213, 214, 215, 216, 217, -1, - 219, -1, 221, 222, 223, 224, 225, 226, 227, 228, - 229, 230, 231, -1, -1, 234, 235, 236, 237, -1, - 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, - 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, - 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, - 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, - 279, 280, 281, 282, 283, 284, 285, 286, -1, 288, - 289, -1, -1, 292, 293, 294, -1, -1, 297, 298, - 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, - 309, 310, 311, 312, 313, 314, -1, -1, -1, -1, - 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, - -1, 330, 331, 332, 333, 334, 335, -1, 337, 338, - 339, 340, 341, 342, 343, 344, 345, 346, -1, 348, - 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, - 359, 360, -1, 362, 363, 364, 365, 366, 367, 368, - 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, - 379, 380, 381, -1, -1, 384, 385, 386, 387, 388, - 389, 390, 391, 392, -1, 394, 395, 396, 397, 398, - -1, 400, 401, 402, 403, 404, 405, 406, 407, 408, - 409, 410, 411, 412, 413, 414, -1, -1, 417, 418, - -1, 420, 421, 422, 423, 424, 425, 426, -1, 428, - 429, 430, -1, -1, 433, 434, 435, 436, 437, 438, - 439, 440, 441, 442, 443, 444, 445, 446, -1, -1, - 449, 450, 451, -1, 453, 454, 455, 456, -1, 458, - 459, 460, 461, 462, 463, 464, 465, -1, 467, 468, - 469, 470, 471, 472, 473, 474, 475, -1, -1, 478, - -1, -1, 481, 482, 483, 484, 485, 486, 487, 488, - 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, - 499, 500, 501, 502, -1, -1, -1, -1, -1, -1, - 509, 510, 511, -1, -1, -1, -1, 516, -1, 518, - -1, -1, -1, -1, -1, 524, 525, 526, 527, 3, - 4, 5, 6, 7, 8, 9, 10, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 22, 23, - 24, 25, 26, 27, 28, 29, -1, 31, 32, 33, - -1, -1, -1, -1, -1, 39, -1, -1, 42, 43, - 44, -1, 46, 47, 48, 49, 50, 51, 52, 53, - 54, 55, 56, 57, -1, 59, 60, 61, 62, 63, - 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, - -1, 75, 76, 77, 78, 79, -1, 81, -1, 83, - 84, 85, 86, 87, 88, 89, 90, 91, 92, -1, - 94, 95, 96, 97, 98, 99, -1, 101, 102, 103, - 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, - 114, 115, 116, 117, 118, -1, 120, 121, 122, 123, - 124, 125, -1, -1, 128, 129, 130, 131, -1, -1, - 134, 135, 136, 137, 138, -1, 140, 141, 142, -1, - 144, 145, 146, -1, 148, 149, 150, 151, 152, 153, - 154, 155, 156, 157, 158, 159, 160, 161, -1, 163, - 164, 165, 166, -1, 168, -1, 170, 171, -1, 173, - 174, 175, 176, 177, 178, -1, 180, -1, 182, 183, - 184, 185, -1, 187, 188, 189, 190, 191, 192, 193, - 194, 195, 196, 197, 198, -1, 200, 201, 202, 203, - 204, 205, 206, -1, 208, 209, 210, 211, 212, 213, - 214, 215, 216, 217, -1, 219, -1, 221, 222, 223, - 224, 225, 226, 227, 228, 229, 230, 231, -1, -1, - 234, 235, 236, 237, -1, 239, 240, 241, 242, 243, - 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, - 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, - 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, - 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, - 284, 285, 286, -1, 288, 289, -1, -1, 292, 293, - 294, -1, -1, 297, 298, 299, 300, 301, 302, 303, + 414, 415, 416, 417, 418, 419, 420, 0, 0, 421, + 422, 423, 424, 425, 426, 427, 428, 429, 0, 0, + 431, 432, 433, 434, 0, 435, 436, 437, 438, 439, + 440, 441, 442, 443, 444, 445, 446, 531, 448, 449, + 0, 0, 450, 451, 0, 452, 0, 454, 455, 456, + 457, 458, 0, 459, 460, 461, 0, 0, 462, 463, + 464, 465, 466, 0, 467, 468, 469, 470, 471, 472, + 473, 474, 0, 0, 475, 476, 477, 0, 478, 479, + 480, 481, 0, 482, 483, 484, 485, 486, 487, 488, + 489, 0, 490, 0, 492, 493, 494, 495, 496, 497, + 498, 0, 0, 499, 0, 0, 500, 501, 502, 503, + 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, + 514, 515, 516, 517, 518, 519, 520, 528, 0, 554, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 2633, 0, 0, 118, 119, 120, 121, + 122, 123, 124, 125, 0, 126, 127, 128, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 130, 131, 0, + 132, 133, 134, 0, 136, 137, 138, 139, 140, 0, + 142, 143, 0, 144, 145, 146, 147, 148, 149, 0, + 0, 150, 151, 152, 153, 154, 155, 156, 0, 157, + 158, 159, 160, 161, 0, 0, 0, 163, 164, 165, + 166, 167, 168, 0, 170, 171, 172, 0, 173, 174, + 175, 176, 177, 178, 0, 0, 180, 181, 182, 183, + 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, + 194, 0, 195, 0, 196, 197, 198, 199, 200, 201, + 0, 0, 202, 203, 204, 205, 0, 0, 206, 207, + 208, 209, 210, 0, 211, 212, 213, 0, 214, 215, + 216, 0, 217, 218, 219, 220, 221, 222, 223, 224, + 225, 226, 227, 228, 0, 229, 0, 230, 231, 232, + 233, 0, 234, 0, 235, 0, 0, 0, 238, 239, + 529, 0, 242, 0, 243, 0, 244, 245, 246, 247, + 0, 248, 249, 250, 251, 252, 253, 254, 0, 256, + 257, 258, 259, 0, 260, 261, 262, 263, 264, 265, + 266, 0, 267, 0, 269, 270, 271, 272, 273, 274, + 275, 276, 0, 277, 0, 278, 0, 0, 281, 0, + 283, 284, 285, 286, 287, 288, 0, 0, 289, 0, + 291, 0, 0, 293, 294, 295, 296, 297, 298, 299, + 300, 530, 302, 303, 304, 305, 306, 307, 308, 309, + 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, + 320, 321, 322, 0, 324, 325, 326, 327, 328, 0, + 329, 330, 0, 332, 0, 333, 334, 335, 336, 337, + 338, 0, 339, 340, 0, 0, 341, 342, 343, 0, + 0, 344, 345, 346, 0, 348, 0, 350, 351, 352, + 353, 354, 355, 356, 357, 358, 359, 360, 361, 0, + 0, 0, 0, 362, 363, 364, 0, 366, 367, 368, + 369, 370, 371, 0, 372, 373, 374, 375, 376, 377, + 0, 378, 379, 380, 381, 382, 383, 384, 385, 386, + 387, 0, 388, 389, 390, 391, 392, 393, 394, 395, + 396, 397, 398, 399, 400, 0, 401, 402, 0, 404, + 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, + 415, 416, 417, 418, 419, 420, 0, 0, 421, 422, + 423, 424, 425, 426, 427, 428, 429, 0, 0, 431, + 432, 433, 434, 0, 435, 436, 437, 438, 439, 440, + 441, 442, 443, 444, 445, 446, 531, 448, 449, 0, + 0, 450, 451, 0, 452, 0, 454, 455, 456, 457, + 458, 0, 459, 460, 461, 0, 0, 462, 463, 464, + 465, 466, 0, 467, 468, 469, 470, 471, 472, 473, + 474, 0, 0, 475, 476, 477, 0, 478, 479, 480, + 481, 0, 482, 483, 484, 485, 486, 487, 488, 489, + 0, 490, 0, 492, 493, 494, 495, 496, 497, 498, + 0, 0, 499, 0, 0, 500, 501, 502, 503, 504, + 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, + 515, 516, 517, 518, 519, 520, 528, 0, 554, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 2846, 0, 0, 118, 119, 120, 121, 122, + 123, 124, 125, 0, 126, 127, 128, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 130, 131, 0, 132, + 133, 134, 0, 136, 137, 138, 139, 140, 0, 142, + 143, 0, 144, 145, 146, 147, 148, 149, 0, 0, + 150, 151, 152, 153, 154, 155, 156, 0, 157, 158, + 159, 160, 161, 0, 0, 0, 163, 164, 165, 166, + 167, 168, 0, 170, 171, 172, 0, 173, 174, 175, + 176, 177, 178, 0, 0, 180, 181, 182, 183, 184, + 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, + 0, 195, 0, 196, 197, 198, 199, 200, 201, 0, + 0, 202, 203, 204, 205, 0, 0, 206, 207, 208, + 209, 210, 0, 211, 212, 213, 0, 214, 215, 216, + 0, 217, 218, 219, 220, 221, 222, 223, 224, 225, + 226, 227, 228, 0, 229, 0, 230, 231, 232, 233, + 0, 234, 0, 235, 0, 0, 0, 238, 239, 529, + 0, 242, 0, 243, 0, 244, 245, 246, 247, 0, + 248, 249, 250, 251, 252, 253, 254, 0, 256, 257, + 258, 259, 0, 260, 261, 262, 263, 264, 265, 266, + 0, 267, 0, 269, 270, 271, 272, 273, 274, 275, + 276, 0, 277, 0, 278, 0, 0, 281, 0, 283, + 284, 285, 286, 287, 288, 0, 0, 289, 0, 291, + 0, 0, 293, 294, 295, 296, 297, 298, 299, 300, + 530, 302, 303, 304, 305, 306, 307, 308, 309, 310, + 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, + 321, 322, 0, 324, 325, 326, 327, 328, 0, 329, + 330, 0, 332, 0, 333, 334, 335, 336, 337, 338, + 0, 339, 340, 0, 0, 341, 342, 343, 0, 0, + 344, 345, 346, 0, 348, 0, 350, 351, 352, 353, + 354, 355, 356, 357, 358, 359, 360, 361, 0, 0, + 0, 0, 362, 363, 364, 0, 366, 367, 368, 369, + 370, 371, 0, 372, 373, 374, 375, 376, 377, 0, + 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, + 0, 388, 389, 390, 391, 392, 393, 394, 395, 396, + 397, 398, 399, 400, 0, 401, 402, 0, 404, 405, + 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, + 416, 417, 418, 419, 420, 0, 0, 421, 422, 423, + 424, 425, 426, 427, 428, 429, 0, 0, 431, 432, + 433, 434, 0, 435, 436, 437, 438, 439, 440, 441, + 442, 443, 444, 445, 446, 531, 448, 449, 0, 0, + 450, 451, 0, 452, 0, 454, 455, 456, 457, 458, + 0, 459, 460, 461, 0, 0, 462, 463, 464, 465, + 466, 0, 467, 468, 469, 470, 471, 472, 473, 474, + 0, 0, 475, 476, 477, 0, 478, 479, 480, 481, + 0, 482, 483, 484, 485, 486, 487, 488, 489, 0, + 490, 0, 492, 493, 494, 495, 496, 497, 498, 0, + 0, 499, 0, 0, 500, 501, 502, 503, 504, 505, + 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, + 516, 517, 518, 519, 520, 528, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 3301, 0, 0, 118, 119, 120, 121, 122, 123, + 124, 125, 0, 126, 127, 128, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 130, 131, 0, 132, 133, + 134, 0, 136, 137, 138, 139, 140, 0, 142, 143, + 0, 144, 145, 146, 147, 148, 149, 0, 0, 150, + 151, 152, 153, 154, 155, 156, 0, 157, 158, 159, + 160, 161, 0, 0, 0, 163, 164, 165, 166, 167, + 168, 0, 170, 171, 172, 0, 173, 174, 175, 176, + 177, 178, 0, 0, 180, 181, 182, 183, 184, 185, + 186, 187, 188, 189, 190, 191, 192, 193, 194, 0, + 195, 0, 196, 197, 198, 199, 200, 201, 0, 0, + 202, 203, 204, 205, 0, 0, 206, 207, 208, 209, + 210, 0, 211, 212, 213, 0, 214, 215, 216, 0, + 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, + 227, 228, 0, 229, 0, 230, 231, 232, 233, 0, + 234, 0, 235, 0, 0, 0, 238, 239, 529, 0, + 242, 0, 243, 0, 244, 245, 246, 247, 0, 248, + 249, 250, 251, 252, 253, 254, 0, 256, 257, 258, + 259, 0, 260, 261, 262, 263, 264, 265, 266, 0, + 267, 0, 269, 270, 271, 272, 273, 274, 275, 276, + 0, 277, 0, 278, 0, 0, 281, 0, 283, 284, + 285, 286, 287, 288, 0, 0, 289, 0, 291, 0, + 0, 293, 294, 295, 296, 297, 298, 299, 300, 530, + 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, + 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, + 322, 0, 324, 325, 326, 327, 328, 0, 329, 330, + 0, 332, 0, 333, 334, 335, 336, 337, 338, 0, + 339, 340, 0, 0, 341, 342, 343, 0, 0, 344, + 345, 346, 0, 348, 0, 350, 351, 352, 353, 354, + 355, 356, 357, 358, 359, 360, 361, 0, 0, 0, + 0, 362, 363, 364, 0, 366, 367, 368, 369, 370, + 371, 0, 372, 373, 374, 375, 376, 377, 0, 378, + 379, 380, 381, 382, 383, 384, 385, 386, 387, 0, + 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, + 398, 399, 400, 0, 401, 402, 0, 404, 405, 406, + 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, + 417, 418, 419, 420, 0, 0, 421, 422, 423, 424, + 425, 426, 427, 428, 429, 0, 0, 431, 432, 433, + 434, 0, 435, 436, 437, 438, 439, 440, 441, 442, + 443, 444, 445, 446, 531, 448, 449, 0, 0, 450, + 451, 0, 452, 0, 454, 455, 456, 457, 458, 0, + 459, 460, 461, 0, 0, 462, 463, 464, 465, 466, + 0, 467, 468, 469, 470, 471, 472, 473, 474, 0, + 0, 475, 476, 477, 0, 478, 479, 480, 481, 0, + 482, 483, 484, 485, 486, 487, 488, 489, 0, 490, + 0, 492, 493, 494, 495, 496, 497, 498, 0, 0, + 499, 0, 0, 500, 501, 502, 503, 504, 505, 506, + 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, + 517, 518, 519, 520, 528, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 2208, 0, 0, 118, 119, 120, 121, 122, 123, 124, + 125, 0, 126, 127, 128, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 130, 131, 0, 132, 133, 134, + 0, 136, 137, 138, 139, 140, 0, 142, 143, 0, + 144, 145, 146, 147, 148, 149, 0, 0, 150, 151, + 152, 153, 154, 155, 156, 0, 157, 158, 159, 160, + 161, 0, 0, 0, 163, 164, 165, 166, 167, 168, + 0, 170, 171, 172, 0, 173, 174, 175, 176, 177, + 178, 0, 0, 180, 181, 182, 183, 184, 185, 186, + 187, 188, 189, 190, 191, 192, 193, 194, 0, 195, + 0, 196, 197, 198, 199, 200, 201, 0, 0, 202, + 203, 204, 205, 0, 0, 206, 207, 208, 209, 210, + 0, 211, 212, 213, 0, 214, 215, 216, 0, 217, + 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, + 228, 0, 229, 0, 230, 231, 232, 233, 0, 234, + 0, 235, 0, 0, 0, 238, 239, 529, 0, 242, + 0, 243, 0, 244, 245, 246, 247, 0, 248, 249, + 250, 251, 252, 253, 254, 0, 256, 257, 258, 259, + 0, 260, 261, 262, 263, 264, 265, 266, 0, 267, + 0, 269, 270, 271, 272, 273, 274, 275, 276, 0, + 277, 0, 278, 0, 0, 281, 0, 283, 284, 285, + 286, 287, 288, 0, 0, 289, 0, 291, 0, 0, + 293, 294, 295, 296, 297, 298, 299, 300, 530, 302, + 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, + 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, + 0, 324, 325, 326, 327, 328, 0, 329, 330, 0, + 332, 0, 333, 334, 335, 336, 337, 338, 0, 339, + 340, 0, 0, 341, 342, 343, 0, 0, 344, 345, + 346, 0, 348, 0, 350, 351, 352, 353, 354, 355, + 356, 357, 358, 359, 360, 361, 0, 0, 0, 0, + 362, 363, 364, 0, 366, 367, 368, 369, 370, 371, + 0, 372, 373, 374, 375, 376, 377, 0, 378, 379, + 380, 381, 382, 383, 384, 385, 386, 387, 0, 388, + 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, + 399, 400, 0, 401, 402, 0, 404, 405, 406, 407, + 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, + 418, 419, 420, 0, 0, 421, 422, 423, 424, 425, + 426, 427, 428, 429, 0, 0, 431, 432, 433, 434, + 0, 435, 436, 437, 438, 439, 440, 441, 442, 443, + 444, 445, 446, 531, 448, 449, 0, 0, 450, 451, + 0, 452, 0, 454, 455, 456, 457, 458, 0, 459, + 460, 461, 0, 0, 462, 463, 464, 465, 466, 0, + 467, 468, 469, 470, 471, 472, 473, 474, 0, 0, + 475, 476, 477, 0, 478, 479, 480, 481, 0, 482, + 483, 484, 485, 486, 487, 488, 489, 0, 490, 0, + 492, 493, 494, 495, 496, 497, 498, 0, 0, 499, + 0, 0, 500, 501, 502, 503, 504, 505, 506, 507, + 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, + 518, 519, 520, 0, 2972, 1364, 821, 0, 0, 2076, + 1060, 0, 0, 0, 0, 0, 2077, 2078, 0, 3163, + 2079, 2080, 2081, 118, 119, 120, 121, 122, 123, 124, + 125, 561, 126, 127, 128, 562, 563, 564, 2973, 566, + 567, 568, 569, 2974, 130, 131, 571, 132, 133, 134, + 2975, 136, 137, 138, 0, 1506, 2976, 1508, 1509, 578, + 144, 145, 146, 147, 148, 149, 579, 580, 150, 151, + 152, 153, 1510, 1511, 156, 583, 157, 158, 159, 160, + 0, 585, 2977, 587, 2978, 164, 165, 166, 167, 168, + 2979, 170, 171, 172, 590, 173, 174, 175, 176, 177, + 178, 591, 2980, 180, 181, 182, 183, 184, 185, 186, + 187, 188, 189, 1516, 191, 192, 1517, 194, 596, 195, + 597, 196, 197, 198, 199, 200, 201, 598, 599, 202, + 203, 204, 205, 600, 601, 206, 207, 1073, 209, 210, + 602, 211, 212, 213, 603, 214, 215, 216, 604, 217, + 218, 219, 220, 0, 222, 223, 224, 225, 226, 227, + 0, 607, 229, 608, 230, 231, 1518, 233, 610, 234, + 611, 235, 2981, 613, 2982, 238, 239, 2983, 2984, 242, + 617, 243, 618, 0, 0, 246, 247, 621, 248, 249, + 250, 251, 252, 253, 254, 2985, 256, 257, 258, 259, + 623, 260, 261, 262, 263, 264, 265, 266, 624, 267, + 2986, 0, 270, 271, 272, 273, 274, 1524, 1525, 629, + 1526, 631, 278, 2987, 2988, 281, 2989, 283, 284, 285, + 286, 287, 288, 635, 636, 289, 2990, 291, 2991, 639, + 293, 294, 295, 296, 297, 298, 299, 300, 2992, 302, + 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, + 313, 314, 315, 316, 317, 318, 319, 320, 321, 1533, + 2993, 1535, 325, 326, 327, 2994, 645, 329, 330, 2995, + 332, 647, 0, 334, 1537, 336, 337, 338, 650, 339, + 340, 651, 652, 2996, 342, 343, 653, 654, 344, 345, + 0, 2997, 348, 2998, 0, 351, 352, 353, 354, 355, + 356, 357, 358, 359, 360, 361, 659, 660, 661, 662, + 362, 363, 0, 2999, 366, 367, 0, 369, 370, 371, + 666, 372, 373, 374, 375, 376, 377, 667, 378, 379, + 380, 381, 382, 1541, 384, 385, 386, 387, 669, 388, + 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, + 399, 400, 670, 401, 402, 3000, 404, 405, 406, 1543, + 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, + 418, 419, 420, 673, 3001, 421, 422, 423, 424, 425, + 426, 3002, 428, 429, 676, 3003, 431, 432, 1547, 434, + 679, 435, 436, 437, 438, 439, 440, 441, 442, 443, + 444, 445, 446, 3004, 448, 0, 682, 683, 450, 451, + 684, 452, 3005, 454, 455, 456, 457, 458, 686, 459, + 1550, 1551, 689, 690, 462, 463, 0, 465, 0, 693, + 467, 468, 3006, 470, 471, 472, 473, 474, 3007, 696, + 475, 476, 477, 697, 478, 479, 480, 481, 698, 482, + 483, 484, 485, 486, 0, 1554, 489, 701, 490, 3008, + 492, 493, 494, 495, 496, 497, 498, 703, 704, 499, + 705, 706, 500, 501, 502, 503, 504, 505, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 517, + 518, 519, 520, 0, 528, 0, 2082, 2083, 2084, 2076, + 3009, 3010, 2087, 2088, 2089, 2090, 2077, 2078, 0, 0, + 2079, 2080, 2081, 118, 119, 120, 121, 122, 123, 124, + 125, 0, 126, 127, 128, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 130, 131, 0, 132, 133, 134, + 0, 136, 137, 138, 139, 140, 0, 142, 143, 0, + 144, 145, 146, 147, 148, 149, 0, 0, 150, 151, + 152, 153, 154, 155, 156, 0, 157, 158, 159, 160, + 161, 0, 0, 0, 163, 164, 165, 166, 167, 168, + 0, 170, 171, 172, 0, 173, 174, 175, 176, 177, + 178, 0, 0, 180, 181, 182, 183, 184, 185, 186, + 187, 188, 189, 190, 191, 192, 193, 194, 0, 195, + 0, 196, 197, 198, 199, 200, 201, 0, 0, 202, + 203, 204, 205, 0, 0, 206, 207, 208, 209, 210, + 0, 211, 212, 213, 0, 214, 215, 216, 0, 217, + 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, + 228, 0, 229, 0, 230, 231, 232, 233, 0, 234, + 0, 235, 0, 0, 0, 238, 239, 529, 0, 242, + 0, 243, 0, 244, 245, 246, 247, 0, 248, 249, + 250, 251, 252, 253, 254, 0, 256, 257, 258, 259, + 0, 260, 261, 262, 263, 264, 265, 266, 0, 267, + 0, 269, 270, 271, 272, 273, 274, 275, 276, 0, + 277, 0, 278, 0, 0, 281, 0, 283, 284, 285, + 286, 287, 288, 0, 0, 289, 0, 291, 0, 0, + 293, 294, 295, 296, 297, 298, 299, 300, 530, 302, + 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, + 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, + 0, 324, 325, 326, 327, 328, 0, 329, 330, 0, + 332, 0, 333, 334, 335, 336, 337, 338, 0, 339, + 340, 0, 0, 341, 342, 343, 0, 0, 344, 345, + 346, 0, 348, 0, 350, 351, 352, 353, 354, 355, + 356, 357, 358, 359, 360, 361, 0, 0, 0, 0, + 362, 363, 364, 0, 366, 367, 368, 369, 370, 371, + 0, 372, 373, 374, 375, 376, 377, 0, 378, 379, + 380, 381, 382, 383, 384, 385, 386, 387, 0, 388, + 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, + 399, 400, 0, 401, 402, 0, 404, 405, 406, 407, + 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, + 418, 419, 420, 0, 0, 421, 422, 423, 424, 425, + 426, 427, 428, 429, 0, 0, 431, 432, 433, 434, + 0, 435, 436, 437, 438, 439, 440, 441, 442, 443, + 444, 445, 446, 531, 448, 449, 0, 0, 450, 451, + 0, 452, 0, 454, 455, 456, 457, 458, 0, 459, + 460, 461, 0, 0, 462, 463, 464, 465, 466, 0, + 467, 468, 469, 470, 471, 472, 473, 474, 0, 0, + 475, 476, 477, 0, 478, 479, 480, 481, 0, 482, + 483, 484, 485, 486, 487, 488, 489, 0, 490, 0, + 492, 493, 494, 495, 496, 497, 498, 0, 0, 499, + 0, 0, 500, 501, 502, 503, 504, 505, 506, 507, + 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, + 518, 519, 520, 0, 0, 0, 2082, 2083, 2084, 0, + 2085, 2086, 2087, 2088, 2089, 2090, 1639, 0, 0, 1640, + 0, 0, 0, 1641, 1642, 1643, 1644, 1645, 1646, 1647, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 1648, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 1650, 1639, 0, 0, 1640, 0, + 0, 1651, 1641, 1642, 1643, 1644, 1645, 1646, 1647, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 1648, 0, 0, 0, 0, 1652, 0, + 0, 0, 0, 1650, 1639, 0, 0, 1640, 0, 0, + 1651, 1641, 1642, 1643, 1644, 1645, 1646, 1647, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 1648, 0, 0, 0, 0, 1652, 0, 0, + 0, 0, 1650, 0, 0, 0, 0, 0, 0, 1651, + 0, 0, 1639, 0, 0, 1640, 0, 0, 0, 1641, + 1642, 1643, 1644, 1645, 1646, 1647, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 1652, 0, 0, 0, + 1648, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 1650, 1639, 0, 0, 1640, 1653, 0, 1651, 1641, 1642, + 1643, 1644, 1645, 1646, 1647, 0, 0, 0, 0, 0, + 0, 0, 1654, 0, 0, 0, 0, 1655, 0, 1648, + 0, 0, 0, 0, 1652, 0, 0, 0, 0, 1650, + 0, 0, 0, 0, 1653, 0, 1651, 0, 0, 0, + 1656, 1657, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 1654, 0, 0, 0, 1658, 1655, 0, 0, 0, + 0, 0, 0, 1652, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 1653, 0, 0, 0, 0, 0, 1656, + 1657, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 1654, 0, 0, 1659, 1658, 1655, 1660, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 1661, 0, 0, 1662, 0, 0, 0, 0, 1656, 1657, + 0, 1653, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 1659, 1658, 0, 1660, 0, 0, 1654, 0, + 0, 0, 0, 1655, 0, 0, 0, 0, 0, 1661, + 0, 0, 1662, 0, 0, 0, 0, 0, 0, 0, + 1653, 0, 0, 0, 0, 0, 1656, 1657, 0, 0, + 0, 1659, 0, 0, 1660, 0, 0, 1654, 0, 0, + 0, 1658, 1655, 0, 0, 0, 0, 0, 1661, 0, + 0, 1662, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 1656, 1657, 0, 0, 0, + 0, 0, 1663, 0, 0, 0, 0, 0, 0, 1659, + 1658, 0, 1660, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 1661, 0, 0, 1662, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 1663, 0, 0, 0, 0, 0, 0, 1659, 0, + 0, 1660, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 1661, 0, 0, 1662, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 1663, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 1664, 0, 0, 1665, 1666, 1667, 0, 1668, 1669, 1670, + 1671, 1672, 1673, 0, 0, 0, 0, 2918, 1663, 0, + 0, 0, 0, 0, 1639, 0, 0, 1640, 0, 0, + 0, 1641, 1642, 1643, 1644, 1645, 1646, 1647, 0, 1664, + 0, 0, 1665, 1666, 1667, 0, 1668, 1669, 1670, 1671, + 1672, 1673, 1648, 0, 0, 0, 3155, 1663, 0, 0, + 0, 0, 1650, 0, 0, 0, 0, 0, 0, 1651, + 0, 0, 0, 0, 0, 0, 0, 0, 1664, 0, + 0, 1665, 1666, 1667, 0, 1668, 1669, 1670, 1671, 1672, + 1673, 0, 0, 0, 0, 3162, 1652, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 1639, 0, 0, 1640, 0, 0, 0, 1641, 1642, + 1643, 1644, 1645, 1646, 1647, 0, 1664, 0, 0, 1665, + 1666, 1667, 0, 1668, 1669, 1670, 1671, 1672, 1673, 1648, + 0, 0, 0, 3324, 0, 0, 0, 0, 0, 1650, + 1639, 0, 0, 1640, 0, 0, 1651, 1641, 1642, 1643, + 1644, 1645, 1646, 1647, 0, 1664, 0, 0, 1665, 1666, + 1667, 0, 1668, 1669, 1670, 1671, 1672, 1673, 1648, 0, + 0, 0, 3346, 1652, 0, 0, 0, 0, 1650, 1639, + 0, 0, 1640, 1653, 0, 1651, 1641, 1642, 1643, 1644, + 1645, 1646, 1647, 0, 0, 0, 0, 0, 0, 0, + 1654, 0, 0, 0, 0, 1655, 0, 1648, 0, 0, + 0, 0, 1652, 0, 0, 0, 0, 1650, 0, 0, + 0, 0, 0, 0, 1651, 0, 0, 0, 1656, 1657, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 1658, 0, 0, 0, 0, 0, 0, + 0, 1652, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 1639, 0, 0, 1640, + 1653, 0, 0, 1641, 1642, 1643, 1644, 1645, 1646, 1647, + 0, 1659, 0, 0, 1660, 0, 0, 1654, 0, 0, + 0, 0, 1655, 0, 1648, 0, 0, 0, 1661, 0, + 0, 1662, 0, 0, 1650, 0, 0, 0, 0, 1653, + 0, 1651, 0, 0, 0, 1656, 1657, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 1654, 0, 0, 0, + 1658, 1655, 0, 0, 0, 0, 0, 0, 1652, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 1653, 0, + 0, 0, 0, 0, 1656, 1657, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 1654, 0, 0, 1659, 1658, + 1655, 1660, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 1661, 0, 0, 1662, 0, + 0, 0, 0, 1656, 1657, 0, 0, 0, 0, 0, + 1663, 0, 0, 0, 0, 0, 0, 1659, 1658, 0, + 1660, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 1661, 0, 0, 1662, 0, 0, + 0, 0, 0, 0, 0, 1653, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 1659, 0, 0, 1660, + 0, 0, 1654, 0, 0, 0, 0, 1655, 0, 0, + 0, 0, 0, 1661, 0, 0, 1662, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 1656, 1657, 0, 0, 0, 0, 0, 1663, 0, 0, + 0, 0, 0, 0, 0, 1658, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 1664, 0, + 0, 1665, 1666, 1667, 0, 1668, 1669, 1670, 1671, 1672, + 1673, 0, 0, 0, 0, 3446, 1663, 0, 0, 0, + 0, 0, 0, 1659, 0, 0, 1660, 0, 0, 0, + 0, 0, 0, 0, 1639, 0, 0, 1640, 0, 0, + 1661, 1641, 1642, 1662, 0, 1645, 1646, 1647, 0, 0, + 0, 0, 0, 1639, 0, 1663, 1640, 0, 0, 0, + 1641, 1642, 1643, 1644, 1645, 1646, 1647, 0, 0, 0, + 0, 0, 1650, 0, 0, 0, 0, 0, 0, 1651, + 0, 1648, 0, 0, 0, 1664, 0, 0, 1665, 1666, + 1667, 1650, 1668, 1669, 1670, 1671, 1672, 1673, 1651, 0, + 0, 0, 3502, 0, 0, 0, 1652, 0, 0, 0, + 1639, 0, 0, 1640, 0, 0, 0, 1641, 1642, 1643, + 1644, 1645, 1646, 1647, 1664, 1652, 0, 1665, 1666, 1667, + 0, 1668, 1669, 1670, 1671, 1672, 1673, 0, 1648, 0, + 0, 3524, 1663, 0, 0, 0, 0, 0, 1650, 0, + 0, 0, 0, 0, 0, 1651, 0, 0, 0, 0, + 0, 0, 0, 1664, 0, 0, 1665, 1666, 1667, 0, + 1668, 1669, 1670, 1671, 1672, 1673, 0, 0, 1827, 0, + 0, 0, 1652, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 1653, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 1654, 0, 1653, 0, 0, 1655, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 1654, + 0, 0, 0, 0, 1655, 0, 0, 0, -2102, -2102, + 1664, 0, 0, 1665, 1666, 1667, 0, 1668, 1669, 1670, + 1671, 1672, 1673, 1658, 0, 2872, 0, 1656, 1657, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 1653, + 0, 0, 1658, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 1654, 0, 0, 0, + 0, 1655, 0, 0, -2102, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 1661, 0, + 1659, 0, 0, 1660, 1656, 1657, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 1661, 0, 1658, + 1662, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 1659, 0, 0, + 1660, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 1661, 0, 0, 1662, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 1663, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 1663, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 1663, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 1664, 0, + 0, 1665, 1666, 1667, 0, 1668, 1669, 1670, 1671, 1672, + 1673, 0, 0, 0, 0, 0, 0, 1664, 0, 0, + 1665, 1666, 1667, 0, 1668, 1669, 1670, 1671, 1672, 1673, + 0, 0, 3314, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 560, 0, 0, 1664, 0, 0, 1665, 1666, 1667, + 0, 1668, 1669, 1670, 1671, 1672, 1673, 0, 0, 3486, + 118, 119, 120, 121, 122, 123, 124, 125, 561, 126, + 127, 128, 562, 563, 564, 565, 566, 567, 568, 569, + 570, 130, 131, 571, 132, 133, 134, 572, 136, 137, + 138, 573, 574, 575, 576, 577, 578, 144, 145, 146, + 147, 148, 149, 579, 580, 150, 151, 152, 153, 581, + 582, 156, 583, 157, 158, 159, 160, 584, 585, 586, + 587, 588, 164, 165, 166, 167, 168, 589, 170, 171, + 172, 590, 173, 174, 175, 176, 177, 178, 591, 592, + 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, + 594, 191, 192, 595, 194, 596, 195, 597, 196, 197, + 198, 199, 200, 201, 598, 599, 202, 203, 204, 205, + 600, 601, 206, 207, 208, 209, 210, 602, 211, 212, + 213, 603, 214, 215, 216, 604, 217, 218, 219, 220, + 605, 222, 223, 224, 225, 226, 227, 606, 607, 229, + 608, 230, 231, 609, 233, 610, 234, 611, 235, 612, + 613, 614, 238, 239, 615, 616, 242, 617, 243, 618, + 619, 620, 246, 247, 621, 248, 249, 250, 251, 252, + 253, 254, 622, 256, 257, 258, 259, 623, 260, 261, + 262, 263, 264, 265, 266, 624, 267, 625, 626, 270, + 271, 272, 273, 274, 627, 628, 629, 630, 631, 278, + 632, 633, 281, 634, 283, 284, 285, 286, 287, 288, + 635, 636, 289, 637, 291, 638, 639, 293, 294, 295, + 296, 297, 298, 299, 300, 640, 302, 303, 304, 305, + 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, + 316, 317, 318, 319, 320, 321, 641, 642, 643, 325, + 326, 327, 644, 645, 329, 330, 646, 332, 647, 648, + 334, 649, 336, 337, 338, 650, 339, 340, 651, 652, + 341, 342, 343, 653, 654, 344, 345, 655, 656, 348, + 657, 658, 351, 352, 353, 354, 355, 356, 357, 358, + 359, 360, 361, 659, 660, 661, 662, 362, 363, 663, + 664, 366, 367, 665, 369, 370, 371, 666, 372, 373, + 374, 375, 376, 377, 667, 378, 379, 380, 381, 382, + 668, 384, 385, 386, 387, 669, 388, 389, 390, 391, + 392, 393, 394, 395, 396, 397, 398, 399, 400, 670, + 401, 402, 671, 404, 405, 406, 672, 408, 409, 410, + 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, + 673, 674, 421, 422, 423, 424, 425, 426, 675, 428, + 429, 676, 677, 431, 432, 678, 434, 679, 435, 436, + 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, + 680, 448, 681, 682, 683, 450, 451, 684, 452, 685, + 454, 455, 456, 457, 458, 686, 459, 687, 688, 689, + 690, 462, 463, 691, 465, 692, 693, 467, 468, 694, + 470, 471, 472, 473, 474, 695, 696, 475, 476, 477, + 697, 478, 479, 480, 481, 698, 482, 483, 484, 485, + 486, 699, 700, 489, 701, 490, 702, 492, 493, 494, + 495, 496, 497, 498, 703, 704, 499, 705, 706, 500, + 501, 502, 503, 504, 505, 707, 708, 709, 710, 711, + 712, 713, 714, 715, 716, 717, 517, 518, 519, 520, + 528, 0, 0, 0, 0, 0, 0, 0, 0, 2113, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 118, + 119, 120, 121, 122, 123, 124, 125, 0, 126, 127, + 128, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 130, 131, 0, 132, 133, 134, 0, 136, 137, 138, + 139, 140, 0, 142, 143, 0, 144, 145, 146, 147, + 148, 149, 0, 0, 150, 151, 152, 153, 154, 155, + 156, 0, 157, 158, 159, 160, 161, 0, 0, 0, + 163, 164, 165, 166, 167, 168, 0, 170, 171, 172, + 0, 173, 174, 175, 176, 177, 178, 0, 0, 180, + 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, + 191, 192, 193, 194, 0, 195, 0, 196, 197, 198, + 199, 200, 201, 0, 0, 202, 203, 204, 205, 0, + 0, 206, 207, 208, 209, 210, 0, 211, 212, 213, + 0, 214, 215, 216, 0, 217, 218, 219, 220, 221, + 222, 223, 224, 225, 226, 227, 228, 0, 229, 0, + 230, 231, 232, 233, 0, 234, 0, 235, 0, 0, + 0, 238, 239, 529, 0, 242, 0, 243, 0, 244, + 245, 246, 247, 0, 248, 249, 250, 251, 252, 253, + 254, 0, 256, 257, 258, 259, 0, 260, 261, 262, + 263, 264, 265, 266, 0, 267, 0, 269, 270, 271, + 272, 273, 274, 275, 276, 0, 277, 0, 278, 0, + 0, 281, 0, 283, 284, 285, 286, 287, 288, 0, + 0, 289, 0, 291, 0, 0, 293, 294, 295, 296, + 297, 298, 299, 300, 530, 302, 303, 304, 305, 306, + 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, + 317, 318, 319, 320, 321, 322, 0, 324, 325, 326, + 327, 328, 0, 329, 330, 0, 332, 0, 333, 334, + 335, 336, 337, 338, 0, 339, 340, 0, 0, 341, + 342, 343, 0, 0, 344, 345, 346, 0, 348, 0, + 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, + 360, 361, 0, 0, 0, 0, 362, 363, 364, 0, + 366, 367, 368, 369, 370, 371, 0, 372, 373, 374, + 375, 376, 377, 0, 378, 379, 380, 381, 382, 383, + 384, 385, 386, 387, 0, 388, 389, 390, 391, 392, + 393, 394, 395, 396, 397, 398, 399, 400, 0, 401, + 402, 0, 404, 405, 406, 407, 408, 409, 410, 411, + 412, 413, 414, 415, 416, 417, 418, 419, 420, 0, + 0, 421, 422, 423, 424, 425, 426, 427, 428, 429, + 0, 0, 431, 432, 433, 434, 0, 435, 436, 437, + 438, 439, 440, 441, 442, 443, 444, 445, 446, 531, + 448, 449, 0, 0, 450, 451, 0, 452, 0, 454, + 455, 456, 457, 458, 0, 459, 460, 461, 0, 0, + 462, 463, 464, 465, 466, 0, 467, 468, 469, 470, + 471, 472, 473, 474, 0, 0, 475, 476, 477, 0, + 478, 479, 480, 481, 0, 482, 483, 484, 485, 486, + 487, 488, 489, 0, 490, 0, 492, 493, 494, 495, + 496, 497, 498, 0, 0, 499, 0, 0, 500, 501, + 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, + 512, 513, 514, 515, 516, 517, 518, 519, 520, 528, + 0, 0, 0, 0, 0, 0, 0, 0, 2765, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 118, 119, + 120, 121, 122, 123, 124, 125, 0, 126, 127, 128, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 130, + 131, 0, 132, 133, 134, 0, 136, 137, 138, 139, + 140, 0, 142, 143, 0, 144, 145, 146, 147, 148, + 149, 0, 0, 150, 151, 152, 153, 154, 155, 156, + 0, 157, 158, 159, 160, 161, 0, 0, 0, 163, + 164, 165, 166, 167, 168, 0, 170, 171, 172, 0, + 173, 174, 175, 176, 177, 178, 0, 0, 180, 181, + 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, + 192, 193, 194, 0, 195, 0, 196, 197, 198, 199, + 200, 201, 0, 0, 202, 203, 204, 205, 0, 0, + 206, 207, 208, 209, 210, 0, 211, 212, 213, 0, + 214, 215, 216, 0, 217, 218, 219, 220, 221, 222, + 223, 224, 225, 226, 227, 228, 0, 229, 0, 230, + 231, 232, 233, 0, 234, 0, 235, 0, 0, 0, + 238, 239, 529, 0, 242, 0, 243, 0, 244, 245, + 246, 247, 0, 248, 249, 250, 251, 252, 253, 254, + 0, 256, 257, 258, 259, 0, 260, 261, 262, 263, + 264, 265, 266, 0, 267, 0, 269, 270, 271, 272, + 273, 274, 275, 276, 0, 277, 0, 278, 0, 0, + 281, 0, 283, 284, 285, 286, 287, 288, 0, 0, + 289, 0, 291, 0, 0, 293, 294, 295, 296, 297, + 298, 299, 300, 530, 302, 303, 304, 305, 306, 307, + 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, + 318, 319, 320, 321, 322, 0, 324, 325, 326, 327, + 328, 0, 329, 330, 0, 332, 0, 333, 334, 335, + 336, 337, 338, 0, 339, 340, 0, 0, 341, 342, + 343, 0, 0, 344, 345, 346, 0, 348, 0, 350, + 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, + 361, 0, 0, 0, 0, 362, 363, 364, 0, 366, + 367, 368, 369, 370, 371, 0, 372, 373, 374, 375, + 376, 377, 0, 378, 379, 380, 381, 382, 383, 384, + 385, 386, 387, 0, 388, 389, 390, 391, 392, 393, + 394, 395, 396, 397, 398, 399, 400, 0, 401, 402, + 0, 404, 405, 406, 407, 408, 409, 410, 411, 412, + 413, 414, 415, 416, 417, 418, 419, 420, 0, 0, + 421, 422, 423, 424, 425, 426, 427, 428, 429, 0, + 0, 431, 432, 433, 434, 0, 435, 436, 437, 438, + 439, 440, 441, 442, 443, 444, 445, 446, 531, 448, + 449, 0, 0, 450, 451, 0, 452, 0, 454, 455, + 456, 457, 458, 0, 459, 460, 461, 0, 0, 462, + 463, 464, 465, 466, 0, 467, 468, 469, 470, 471, + 472, 473, 474, 0, 0, 475, 476, 477, 0, 478, + 479, 480, 481, 0, 482, 483, 484, 485, 486, 487, + 488, 489, 0, 490, 0, 492, 493, 494, 495, 496, + 497, 498, 0, 0, 499, 0, 0, 500, 501, 502, + 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, + 513, 514, 515, 516, 517, 518, 519, 520, 974, 1364, + 821, 0, 0, 0, 1060, 0, 0, 2768, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 118, 119, 120, + 121, 122, 123, 124, 125, 0, 126, 127, 128, 0, + 0, 0, 565, 0, 0, 0, 0, 570, 130, 131, + 0, 132, 133, 134, 572, 136, 137, 138, 573, 574, + 575, 576, 577, 0, 144, 145, 146, 147, 148, 149, + 0, 0, 150, 151, 152, 153, 581, 582, 156, 0, + 157, 158, 159, 160, 584, 0, 586, 0, 588, 164, + 165, 166, 167, 168, 589, 170, 171, 172, 0, 173, + 174, 175, 176, 177, 178, 0, 592, 180, 181, 182, + 183, 184, 185, 186, 187, 188, 189, 594, 191, 192, + 595, 194, 0, 195, 0, 196, 197, 198, 199, 200, + 201, 0, 0, 202, 203, 204, 205, 0, 0, 206, + 207, 208, 209, 210, 0, 211, 212, 213, 0, 214, + 215, 216, 0, 217, 218, 219, 220, 605, 222, 223, + 224, 225, 226, 227, 606, 1365, 229, 0, 230, 231, + 609, 233, 0, 234, 0, 235, 612, 0, 614, 238, + 239, 615, 616, 242, 0, 243, 0, 619, 620, 246, + 247, 0, 248, 249, 250, 251, 252, 253, 254, 622, + 256, 257, 258, 259, 0, 260, 261, 262, 263, 264, + 265, 266, 0, 267, 625, 626, 270, 271, 272, 273, + 274, 627, 628, 0, 630, 0, 278, 632, 633, 281, + 634, 283, 284, 285, 286, 287, 288, 0, 0, 289, + 637, 291, 638, 0, 293, 294, 295, 296, 297, 298, + 299, 300, 640, 302, 303, 304, 305, 306, 307, 308, + 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, + 319, 320, 321, 641, 642, 643, 325, 326, 327, 644, + 0, 329, 330, 646, 332, 0, 648, 334, 649, 336, + 337, 338, 0, 339, 340, 1366, 0, 341, 342, 343, + 0, 0, 344, 345, 655, 656, 348, 657, 658, 351, + 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, + 0, 0, 0, 0, 362, 363, 663, 664, 366, 367, + 665, 369, 370, 371, 0, 372, 373, 374, 375, 376, + 377, 0, 378, 379, 380, 381, 382, 668, 384, 385, + 386, 387, 0, 388, 389, 390, 391, 392, 393, 394, + 395, 396, 397, 398, 399, 400, 0, 401, 402, 671, + 404, 405, 406, 672, 408, 409, 410, 411, 412, 413, + 414, 415, 416, 417, 418, 419, 420, 0, 674, 421, + 422, 423, 424, 425, 426, 675, 428, 429, 0, 677, + 431, 432, 678, 434, 0, 435, 436, 437, 438, 439, + 440, 441, 442, 443, 444, 445, 446, 680, 448, 681, + 0, 0, 450, 451, 0, 452, 685, 454, 455, 456, + 457, 458, 0, 459, 687, 688, 0, 0, 462, 463, + 691, 465, 692, 1367, 467, 468, 694, 470, 471, 472, + 473, 474, 0, 0, 475, 476, 477, 0, 478, 479, + 480, 481, 0, 482, 483, 484, 485, 486, 699, 700, + 489, 0, 490, 702, 492, 493, 494, 495, 496, 497, + 498, 0, 0, 499, 0, 0, 500, 501, 502, 503, + 504, 505, 707, 708, 709, 710, 711, 712, 713, 714, + 715, 716, 717, 517, 518, 519, 520, 0, 0, 1639, + 0, 0, 1640, 0, 1368, 1369, 1641, 1642, 1643, 1644, + 1645, 1646, 1647, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 1648, 0, 0, + 0, 0, 2214, 0, 0, 0, 0, 1650, 1639, 0, + 0, 1640, 0, 0, 1651, 1641, 1642, 1643, 1644, 1645, + 1646, 1647, 0, 0, 0, 0, 1639, 0, 0, 1640, + 0, 0, 0, 1641, 1642, 0, 1648, 1645, 1646, 1647, + 0, 1652, 0, 0, 0, 0, 1650, 1639, 0, 0, + 1640, 0, 0, 1651, 1641, 1642, 1643, 1644, 1645, 1646, + 1647, 0, 0, 0, 1650, 0, 0, 0, 0, 0, + 0, 1651, 0, 0, 0, 1648, 0, 0, 0, 0, + 1652, 0, 0, 0, 0, 1650, 0, 2215, 0, 0, + 0, 0, 1651, 0, 1639, 0, 0, 1640, 1652, 0, + 0, 1641, 1642, 1643, 1644, 1645, 1646, 1647, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 1652, + 0, 0, 1648, 0, 0, 0, 1927, 0, 0, 0, + 0, 0, 1650, 0, 0, 0, 0, 0, 1653, 1651, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 1654, 0, 0, 0, 0, + 1655, 0, 0, 0, 0, 0, 1652, 1963, 0, 0, + 0, 0, 1964, 0, 0, 0, 0, 1653, 0, 0, + 0, 0, 0, 1656, 1657, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 1654, 1653, 0, 0, 1658, 1655, + 0, 0, 0, 0, 0, 3592, 0, 0, 0, 0, + 0, 0, 1654, 0, 0, 0, 1653, 1655, 0, 0, + 0, 0, 1656, 1657, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 1654, 0, 0, 1659, 1658, 1655, 1660, + 1656, 1657, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 1661, 0, 1658, 1662, 0, 0, 0, + 0, 1656, 1657, 1653, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 1659, 1658, 0, 1660, 0, + 1654, 0, 0, 0, 0, 1655, 0, 0, 0, 0, + 0, 0, 1661, 1659, 0, 1662, 1660, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 1656, 1657, + 1661, 0, 0, 0, 1659, 0, 0, 1660, 0, 0, + 0, 0, 0, 1658, 0, 0, 0, 0, 0, 0, + 0, 1661, 0, 0, 1662, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 1663, 0, 0, 0, 0, + 0, 1659, 0, 3593, 1660, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 1661, 0, + 0, 1662, 0, 0, 0, 0, 0, 0, 0, 1639, + 0, 0, 1640, 0, 1663, 0, 1641, 1642, 1643, 1644, + 1645, 1646, 1647, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 1663, 0, 0, 0, 0, 1648, 2218, 0, + 0, 0, 0, 0, 0, 0, 0, 1650, 0, 0, + 0, 0, 0, 1663, 1651, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 1652, 0, 1664, 0, 0, 1665, 1666, 1667, 0, + 1668, 1669, 1670, 1671, 1672, 1673, 0, 0, 0, 0, + 1663, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 1664, 0, 0, 1665, 1666, 1667, 0, 1668, + 1669, 1670, 1671, 1672, 1673, 0, 0, 0, 0, 0, + 1664, 0, 0, 1665, 1666, 1667, 0, 1668, 1669, 1670, + 1671, 1672, 1673, 0, 0, 0, 0, 0, 0, 0, + 0, 1664, 0, 0, 1665, 1666, 1667, 0, 1668, 1669, + 1670, 1671, 1672, 1673, 0, 0, 0, 0, 1653, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 1639, 1654, 0, 1640, 0, 0, + 1655, 1641, 1642, 1643, 1644, 1645, 1646, 1647, 1664, 0, + 0, 1665, 1666, 1667, 0, 1668, 1669, 1670, 1671, 1672, + 1673, 0, 1648, 1656, 1657, 0, 1969, 0, 0, 0, + 0, 0, 1650, 0, 0, 0, 0, 0, 1658, 1651, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 1639, 0, 0, 1640, 0, 0, 1652, 1641, 1642, 1643, + 1644, 1645, 1646, 1647, 0, 0, 1659, 0, 0, 1660, + 0, 0, 0, 0, 0, 0, 0, 0, 1648, 0, + 0, 0, 0, 1661, 0, 0, 1662, 0, 1650, 0, + 0, 0, 0, 0, 0, 1651, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 1934, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 1652, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 1639, + 0, 0, 1640, 0, 0, 0, 1641, 1642, 1643, 1644, + 1645, 1646, 1647, 1653, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 1648, 0, 0, + 1654, 1976, 0, 0, 0, 1655, 0, 1650, 0, 0, + 0, 0, 0, 0, 1651, 1663, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 1656, 1657, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 1652, 0, 1658, 1974, 0, 0, 0, 0, 1653, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 1654, 0, 0, 0, + 0, 1655, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 1659, 0, 0, 1660, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 1656, 1657, 0, 0, 1661, 0, + 0, 1662, 0, 0, 0, 0, 0, 0, 0, 1658, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 1664, 0, 0, 1665, 1666, 1667, 0, + 1668, 1669, 1670, 1671, 1672, 1673, 0, 0, 1653, 0, + 0, 0, 0, 0, 0, 0, 0, 1659, 0, 0, + 1660, 0, 0, 0, 0, 1654, 0, 0, 0, 0, + 1655, 0, 0, 0, 1661, 0, 0, 1662, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 1639, 0, + 0, 1640, 0, 1656, 1657, 1641, 1642, 1643, 1644, 1645, + 1646, 1647, 0, 0, 0, 0, 0, 0, 1658, 0, + 1663, 0, 0, 0, 0, 0, 1648, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 1650, 0, 0, 0, + 0, 0, 0, 1651, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 1639, 1659, 0, 1640, 1660, + 0, 0, 1641, 1642, 1643, 1644, 1645, 1646, 1647, 0, + 1652, 0, 0, 1661, 0, 0, 1662, 0, 0, 0, + 0, 0, 0, 1648, 0, 0, 1663, 0, 0, 0, + 0, 0, 0, 1650, 0, 0, 0, 0, 0, 0, + 1651, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 1652, 1664, 0, + 0, 1665, 1666, 1667, 0, 1668, 1669, 1670, 1671, 1672, + 1673, 0, 1639, 0, 0, 1640, 0, 0, 0, 1641, + 1642, 1643, 1644, 1645, 1646, 1647, 0, 2106, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 1653, 0, 0, + 1648, 0, 0, 0, 2845, 1663, 0, 0, 0, 0, + 1650, 0, 0, 0, 1654, 0, 0, 1651, 0, 1655, + 0, 0, 0, 0, 1664, 0, 0, 1665, 1666, 1667, + 0, 1668, 1669, 1670, 1671, 1672, 1673, 0, 0, 0, + 0, 0, 1656, 1657, 1652, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 1653, 0, 0, 1658, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 1654, 0, 0, 0, 0, 1655, 0, 0, 0, + 0, 1639, 0, 0, 1640, 0, 0, 0, 1641, 1642, + 1643, 1644, 1645, 1646, 1647, 1659, 0, 0, 1660, 1656, + 1657, 0, 0, 0, 0, 0, 0, 0, 0, 1648, + 0, 0, 1661, 1664, 1658, 1662, 1665, 1666, 1667, 1650, + 1668, 1669, 1670, 1671, 1672, 1673, 1651, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 1653, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 1659, 1652, 0, 1660, 0, 0, 1654, 0, + 0, 0, 0, 1655, 0, 0, 0, 0, 0, 1661, + 0, 0, 1662, 0, 0, 0, 0, 0, 0, 0, + 0, 1639, 0, 0, 1640, 0, 1656, 1657, 1641, 1642, + 1643, 1644, 1645, 1646, 1647, 0, 0, 0, 0, 0, + 0, 1658, 0, 0, 0, 0, 0, 0, 0, 1648, + 0, 0, 0, 0, 1663, 0, 0, 0, 0, 1650, + 0, 0, 0, 0, 0, 0, 1651, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 1659, + 0, 0, 1660, 0, 0, 0, 0, 0, 0, 0, + 1653, 0, 0, 1652, 0, 0, 1661, 0, 0, 1662, + 0, 0, 0, 0, 0, 0, 0, 1654, 0, 0, + 1639, 1663, 1655, 1640, 0, 0, 0, 1641, 1642, 1643, + 1644, 1645, 1646, 1647, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 1656, 1657, 0, 1648, 0, + 0, 0, 0, 0, 2829, 0, 0, 0, 1650, 0, + 1658, 0, 0, 0, 0, 1651, 0, 0, 0, 0, + 0, 0, 1664, 0, 0, 1665, 1666, 1667, 0, 1668, + 1669, 1670, 1671, 1672, 1673, 0, 0, 0, 0, 0, + 0, 0, 1652, 0, 0, 0, 0, 0, 1659, 0, + 1653, 1660, 0, 0, 0, 0, 0, 0, 1663, 0, + 0, 0, 0, 0, 0, 1661, 0, 1654, 1662, 0, + 0, 0, 1655, 0, 0, 0, 0, 0, 0, 1664, + 0, 0, 1665, 1666, 1667, 0, 1668, 1669, 1670, 1671, + 1672, 1673, 0, 0, 0, 1838, 1657, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 1658, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 1653, + 0, 0, 0, 0, 0, 0, 0, 0, 1659, 0, + 0, 1660, 0, 0, 0, 0, 1654, 0, 0, 0, + 0, 1655, 0, 0, 0, 1661, 1664, 1663, 1662, 1665, + 1666, 1667, 0, 1668, 1669, 1670, 1671, 1672, 1673, 0, + 0, 0, 0, 0, 1656, 1657, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 1658, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 1659, 0, 0, + 1660, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 1661, 0, 0, 1662, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 1663, 0, 0, + 0, 0, 0, 0, 0, 1664, 0, 0, 1665, 1666, + 1667, 0, 1668, 1669, 1670, 1671, 1672, 1673, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 1663, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 1664, 0, 0, 1665, 1666, + 1667, 0, 1668, 1669, 1670, 1671, 1672, 1673, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 560, 0, + 2130, 0, 0, 0, 1664, 0, 0, 1665, 1666, 1667, + 0, 1668, 1669, 1670, 1671, 2235, 1673, 118, 119, 120, + 121, 122, 123, 124, 125, 561, 126, 127, 128, 562, + 563, 564, 565, 566, 567, 568, 569, 570, 130, 131, + 571, 132, 133, 134, 572, 136, 137, 138, 573, 574, + 575, 576, 577, 578, 144, 145, 146, 147, 148, 149, + 579, 580, 150, 151, 152, 153, 581, 582, 156, 583, + 157, 158, 159, 160, 584, 585, 586, 587, 588, 164, + 165, 166, 167, 168, 589, 170, 171, 172, 590, 173, + 174, 175, 176, 177, 178, 591, 592, 180, 181, 182, + 183, 184, 185, 186, 187, 188, 189, 594, 191, 192, + 595, 194, 596, 195, 597, 196, 197, 198, 199, 200, + 201, 598, 599, 202, 203, 204, 205, 600, 601, 206, + 207, 208, 209, 210, 602, 211, 212, 213, 603, 214, + 215, 216, 604, 217, 218, 219, 220, 605, 222, 223, + 224, 225, 226, 227, 606, 607, 229, 608, 230, 231, + 609, 233, 610, 234, 611, 235, 612, 613, 614, 238, + 239, 615, 616, 242, 617, 243, 618, 619, 620, 246, + 247, 621, 248, 249, 250, 251, 252, 253, 254, 622, + 256, 257, 258, 259, 623, 260, 261, 262, 263, 264, + 265, 266, 624, 267, 625, 626, 270, 271, 272, 273, + 274, 627, 628, 629, 630, 631, 278, 632, 633, 281, + 634, 283, 284, 285, 286, 287, 288, 635, 636, 289, + 637, 291, 638, 639, 293, 294, 295, 296, 297, 298, + 299, 300, 640, 302, 303, 304, 305, 306, 307, 308, + 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, + 319, 320, 321, 641, 642, 643, 325, 326, 327, 644, + 645, 329, 330, 646, 332, 647, 648, 334, 649, 336, + 337, 338, 650, 339, 340, 651, 652, 341, 342, 343, + 653, 654, 344, 345, 655, 656, 348, 657, 658, 351, + 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, + 659, 660, 661, 662, 362, 363, 663, 664, 366, 367, + 665, 369, 370, 371, 666, 372, 373, 374, 375, 376, + 377, 667, 378, 379, 380, 381, 382, 668, 384, 385, + 386, 387, 669, 388, 389, 390, 391, 392, 393, 394, + 395, 396, 397, 398, 399, 400, 670, 401, 402, 671, + 404, 405, 406, 672, 408, 409, 410, 411, 412, 413, + 414, 415, 416, 417, 418, 419, 420, 673, 674, 421, + 422, 423, 424, 425, 426, 675, 428, 429, 676, 677, + 431, 432, 678, 434, 679, 435, 436, 437, 438, 439, + 440, 441, 442, 443, 444, 445, 446, 680, 448, 681, + 682, 683, 450, 451, 684, 452, 685, 454, 455, 456, + 457, 458, 686, 459, 687, 688, 689, 690, 462, 463, + 691, 465, 692, 693, 467, 468, 694, 470, 471, 472, + 473, 474, 695, 696, 475, 476, 477, 697, 478, 479, + 480, 481, 698, 482, 483, 484, 485, 486, 699, 700, + 489, 701, 490, 702, 492, 493, 494, 495, 496, 497, + 498, 703, 704, 499, 705, 706, 500, 501, 502, 503, + 504, 505, 707, 708, 709, 710, 711, 712, 713, 714, + 715, 716, 717, 517, 518, 519, 520, 560, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 118, 119, 120, 121, + 122, 123, 124, 125, 561, 126, 127, 128, 562, 563, + 564, 565, 566, 567, 568, 569, 570, 130, 131, 571, + 132, 133, 134, 572, 136, 137, 138, 573, 574, 575, + 576, 577, 578, 144, 145, 146, 147, 148, 149, 579, + 580, 150, 151, 152, 153, 581, 582, 156, 583, 157, + 158, 159, 160, 584, 585, 586, 587, 588, 164, 165, + 166, 167, 168, 589, 170, 171, 172, 590, 173, 174, + 175, 176, 177, 178, 591, 592, 180, 181, 182, 183, + 184, 185, 593, 187, 188, 189, 594, 191, 192, 595, + 194, 596, 195, 597, 196, 197, 198, 199, 200, 201, + 598, 599, 202, 203, 204, 205, 600, 601, 206, 207, + 208, 209, 210, 602, 211, 212, 213, 603, 214, 215, + 216, 604, 217, 218, 219, 220, 605, 222, 223, 224, + 225, 226, 227, 606, 607, 229, 608, 230, 231, 609, + 233, 610, 234, 611, 235, 612, 613, 614, 238, 239, + 615, 616, 242, 617, 243, 618, 619, 620, 246, 247, + 621, 248, 249, 250, 251, 252, 253, 254, 622, 256, + 257, 258, 259, 623, 260, 261, 262, 263, 264, 265, + 266, 624, 267, 625, 626, 270, 271, 272, 273, 274, + 627, 628, 629, 630, 631, 278, 632, 633, 281, 634, + 283, 284, 285, 286, 287, 288, 635, 636, 289, 637, + 291, 638, 639, 293, 294, 295, 296, 297, 298, 299, + 300, 640, 302, 303, 304, 305, 306, 307, 308, 309, + 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, + 320, 321, 641, 642, 643, 325, 326, 327, 644, 645, + 329, 330, 646, 332, 647, 648, 334, 649, 336, 337, + 338, 650, 339, 340, 651, 652, 341, 342, 343, 653, + 654, 344, 345, 655, 656, 348, 657, 658, 351, 352, + 353, 354, 355, 356, 357, 358, 359, 360, 361, 659, + 660, 661, 662, 362, 363, 663, 664, 366, 367, 665, + 369, 370, 371, 666, 372, 373, 374, 375, 376, 377, + 667, 378, 379, 380, 381, 382, 668, 384, 385, 386, + 387, 669, 388, 389, 390, 391, 392, 393, 394, 395, + 396, 397, 398, 399, 400, 670, 401, 402, 671, 404, + 405, 406, 672, 408, 409, 410, 411, 412, 413, 414, + 415, 416, 417, 418, 419, 420, 673, 674, 421, 422, + 423, 424, 425, 426, 675, 428, 429, 676, 677, 431, + 432, 678, 434, 679, 435, 436, 437, 438, 439, 440, + 441, 442, 443, 444, 445, 446, 680, 448, 681, 682, + 683, 450, 451, 684, 452, 685, 454, 455, 456, 457, + 458, 686, 459, 687, 688, 689, 690, 462, 463, 691, + 465, 692, 693, 467, 468, 694, 470, 471, 472, 473, + 474, 695, 696, 475, 476, 477, 697, 478, 479, 480, + 481, 698, 482, 483, 484, 485, 486, 699, 700, 489, + 701, 490, 702, 492, 493, 494, 495, 496, 497, 498, + 703, 704, 499, 705, 706, 500, 501, 502, 503, 504, + 505, 707, 708, 709, 710, 711, 712, 713, 714, 715, + 716, 717, 517, 518, 519, 520, 560, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 118, 119, 120, 121, 122, + 123, 124, 125, 561, 126, 127, 128, 562, 563, 564, + 565, 566, 567, 568, 569, 570, 130, 131, 571, 132, + 133, 134, 572, 136, 137, 138, 573, 574, 575, 576, + 577, 578, 144, 145, 146, 147, 148, 149, 579, 580, + 150, 151, 152, 153, 581, 582, 156, 583, 157, 158, + 159, 160, 584, 585, 586, 587, 588, 164, 165, 166, + 167, 168, 589, 170, 171, 172, 590, 173, 174, 175, + 176, 177, 178, 591, 592, 180, 181, 182, 183, 184, + 185, 186, 187, 188, 189, 594, 191, 192, 595, 194, + 596, 195, 597, 196, 197, 198, 199, 200, 201, 598, + 599, 202, 203, 204, 205, 600, 601, 206, 207, 208, + 209, 210, 602, 211, 212, 213, 603, 214, 215, 216, + 604, 217, 218, 219, 220, 605, 222, 223, 224, 225, + 226, 227, 606, 607, 229, 608, 230, 231, 609, 233, + 610, 234, 611, 235, 612, 613, 614, 238, 239, 615, + 616, 242, 617, 243, 618, 619, 620, 246, 247, 621, + 248, 249, 250, 251, 252, 950, 254, 622, 256, 257, + 258, 259, 623, 260, 261, 262, 263, 264, 265, 266, + 624, 267, 625, 626, 270, 271, 272, 273, 274, 627, + 628, 629, 630, 631, 278, 632, 633, 281, 634, 283, + 284, 285, 286, 287, 288, 635, 636, 289, 637, 291, + 638, 639, 293, 294, 295, 296, 297, 298, 299, 300, + 640, 302, 303, 304, 305, 306, 307, 308, 309, 310, + 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, + 321, 641, 642, 643, 325, 326, 327, 644, 645, 329, + 330, 646, 332, 647, 648, 334, 649, 336, 337, 338, + 650, 339, 340, 651, 652, 341, 342, 343, 653, 654, + 344, 345, 655, 656, 348, 657, 658, 351, 352, 353, + 354, 355, 356, 357, 358, 359, 360, 361, 659, 660, + 661, 662, 362, 363, 663, 664, 366, 367, 665, 369, + 370, 371, 666, 372, 373, 374, 375, 376, 377, 667, + 378, 379, 380, 381, 382, 668, 384, 385, 386, 387, + 669, 388, 389, 390, 391, 392, 393, 394, 395, 396, + 397, 398, 399, 400, 670, 401, 402, 671, 404, 405, + 406, 672, 408, 409, 410, 411, 412, 413, 414, 415, + 416, 417, 418, 419, 420, 673, 674, 421, 422, 423, + 424, 425, 426, 675, 428, 429, 676, 677, 431, 432, + 678, 434, 679, 435, 436, 437, 438, 439, 440, 441, + 442, 443, 444, 445, 446, 680, 448, 681, 682, 683, + 450, 451, 684, 452, 685, 454, 455, 456, 457, 458, + 686, 459, 687, 688, 689, 690, 462, 463, 691, 465, + 692, 693, 467, 468, 694, 470, 471, 472, 473, 474, + 695, 696, 475, 476, 477, 697, 478, 479, 480, 481, + 698, 482, 483, 484, 485, 486, 699, 700, 489, 701, + 490, 702, 492, 493, 494, 495, 496, 497, 498, 703, + 704, 499, 705, 706, 500, 501, 502, 503, 504, 505, + 707, 708, 709, 710, 711, 712, 713, 714, 715, 716, + 717, 517, 518, 519, 520, 560, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 118, 119, 120, 121, 122, 123, + 124, 125, 561, 126, 127, 128, 562, 563, 564, 565, + 566, 567, 568, 569, 570, 130, 131, 571, 132, 133, + 134, 572, 136, 137, 138, 573, 574, 575, 576, 577, + 578, 144, 145, 146, 147, 148, 149, 579, 580, 150, + 151, 152, 153, 581, 582, 156, 583, 157, 158, 159, + 160, 584, 585, 586, 587, 588, 164, 165, 166, 167, + 168, 589, 170, 171, 172, 590, 173, 174, 175, 176, + 177, 178, 591, 592, 180, 181, 182, 183, 184, 185, + 186, 187, 188, 189, 594, 191, 192, 595, 194, 596, + 195, 597, 196, 197, 198, 199, 200, 201, 598, 599, + 202, 203, 204, 205, 600, 601, 206, 207, 208, 209, + 210, 602, 211, 212, 213, 603, 214, 215, 216, 604, + 217, 218, 219, 220, 605, 222, 223, 224, 225, 226, + 227, 606, 607, 229, 608, 230, 231, 609, 233, 610, + 234, 611, 235, 612, 613, 614, 238, 239, 615, 616, + 242, 617, 243, 618, 619, 620, 246, 247, 621, 248, + 249, 250, 251, 252, 253, 254, 622, 256, 257, 258, + 259, 623, 260, 261, 262, 263, 264, 265, 266, 624, + 267, 625, 626, 270, 271, 272, 273, 274, 627, 628, + 629, 630, 631, 278, 632, 633, 281, 634, 283, 284, + 285, 286, 287, 288, 635, 636, 289, 637, 291, 638, + 639, 293, 294, 295, 296, 297, 298, 299, 300, 640, + 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, + 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, + 641, 642, 643, 325, 326, 327, 644, 645, 329, 330, + 646, 332, 647, 648, 334, 649, 336, 337, 338, 650, + 339, 340, 651, 652, 341, 342, 343, 653, 654, 344, + 345, 655, 656, 348, 657, 658, 351, 352, 353, 354, + 355, 356, 357, 358, 359, 360, 361, 659, 660, 661, + 662, 362, 363, 663, 664, 366, 367, 665, 369, 370, + 371, 666, 372, 373, 374, 375, 376, 377, 667, 378, + 379, 380, 381, 382, 668, 384, 385, 386, 387, 669, + 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, + 398, 399, 400, 670, 401, 402, 671, 404, 405, 406, + 672, 408, 409, 410, 411, 412, 413, 414, 415, 416, + 417, 418, 419, 420, 673, 674, 421, 422, 423, 424, + 425, 426, 675, 428, 429, 676, 677, 431, 432, 678, + 434, 679, 435, 436, 437, 438, 439, 440, 441, 442, + 443, 444, 445, 446, 680, 448, 681, 682, 683, 450, + 451, 684, 452, 685, 454, 455, 456, 457, 458, 686, + 459, 687, 688, 689, 690, 462, 463, 691, 465, 692, + 693, 467, 468, 694, 470, 471, 472, 473, 474, 695, + 696, 475, 476, 477, 697, 478, 479, 480, 481, 698, + 482, 483, 484, 485, 486, 699, 700, 489, 701, 490, + 702, 492, 493, 494, 495, 496, 497, 498, 703, 704, + 499, 705, 706, 500, 501, 502, 503, 504, 505, 707, + 708, 709, 710, 711, 712, 713, 714, 715, 716, 717, + 517, 518, 519, 520, 560, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 118, 119, 120, 121, 2284, 123, 124, + 125, 561, 126, 127, 128, 562, 563, 564, 565, 566, + 567, 568, 569, 570, 130, 131, 571, 132, 133, 134, + 572, 136, 137, 138, 573, 574, 575, 576, 577, 578, + 144, 145, 146, 147, 148, 149, 579, 580, 150, 151, + 152, 153, 581, 582, 156, 583, 157, 158, 159, 160, + 584, 585, 586, 587, 588, 164, 165, 166, 167, 168, + 589, 170, 171, 172, 590, 173, 174, 175, 176, 177, + 178, 591, 592, 180, 181, 182, 183, 184, 185, 186, + 187, 188, 189, 594, 191, 192, 595, 194, 596, 195, + 597, 196, 197, 198, 199, 200, 201, 598, 599, 202, + 203, 204, 205, 600, 601, 206, 207, 208, 2285, 210, + 602, 211, 212, 213, 603, 214, 215, 216, 604, 217, + 218, 219, 220, 605, 222, 223, 224, 225, 226, 227, + 606, 607, 229, 608, 230, 231, 609, 233, 610, 234, + 611, 235, 612, 613, 614, 238, 239, 615, 616, 242, + 617, 243, 618, 619, 620, 246, 247, 621, 248, 249, + 250, 251, 252, 253, 254, 622, 256, 257, 258, 259, + 623, 260, 261, 262, 263, 264, 265, 266, 624, 267, + 625, 626, 270, 271, 272, 273, 274, 627, 628, 629, + 630, 631, 278, 632, 633, 281, 634, 283, 284, 285, + 286, 287, 288, 635, 636, 289, 637, 291, 638, 639, + 293, 294, 295, 296, 297, 298, 299, 300, 640, 302, + 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, + 313, 314, 315, 316, 317, 318, 319, 320, 321, 641, + 642, 643, 325, 326, 327, 644, 645, 329, 330, 646, + 332, 647, 648, 334, 649, 336, 337, 338, 650, 339, + 340, 651, 652, 341, 342, 343, 653, 654, 344, 345, + 655, 656, 348, 657, 658, 351, 352, 353, 354, 355, + 356, 357, 358, 359, 360, 361, 659, 660, 661, 662, + 362, 363, 663, 664, 366, 367, 665, 369, 370, 371, + 666, 372, 373, 374, 375, 376, 377, 667, 378, 379, + 380, 381, 382, 668, 384, 385, 386, 387, 669, 388, + 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, + 399, 400, 670, 401, 402, 671, 404, 405, 406, 672, + 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, + 418, 419, 420, 673, 674, 421, 422, 423, 424, 425, + 2286, 675, 428, 429, 676, 677, 431, 432, 678, 434, + 679, 435, 436, 437, 438, 439, 440, 441, 442, 443, + 444, 445, 446, 680, 448, 681, 682, 683, 450, 451, + 684, 452, 685, 454, 455, 456, 457, 458, 686, 459, + 687, 688, 689, 690, 462, 463, 691, 465, 692, 693, + 467, 468, 694, 470, 471, 472, 473, 474, 695, 696, + 475, 476, 477, 697, 478, 479, 480, 481, 698, 482, + 483, 484, 485, 486, 699, 700, 489, 701, 490, 702, + 492, 493, 494, 495, 496, 497, 498, 703, 704, 499, + 705, 706, 500, 501, 502, 503, 504, 505, 707, 708, + 709, 710, 711, 712, 713, 714, 715, 716, 717, 517, + 518, 519, 520, 974, 0, 821, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 118, 119, 120, 121, 122, 123, 124, 125, + 0, 126, 127, 128, 0, 0, 0, 565, 0, 0, + 0, 0, 570, 130, 131, 0, 132, 133, 134, 572, + 136, 137, 138, 573, 574, 575, 576, 577, 0, 144, + 145, 146, 147, 148, 149, 0, 0, 150, 151, 152, + 153, 581, 582, 156, 0, 157, 158, 159, 160, 584, + 0, 586, 0, 588, 164, 165, 166, 167, 168, 589, + 170, 171, 172, 0, 173, 174, 175, 176, 177, 178, + 0, 592, 180, 181, 182, 183, 184, 185, 186, 187, + 188, 189, 594, 191, 192, 595, 194, 0, 195, 0, + 196, 197, 198, 199, 200, 201, 0, 0, 202, 203, + 204, 205, 0, 0, 206, 207, 208, 209, 210, 0, + 211, 212, 213, 0, 214, 215, 216, 0, 217, 218, + 219, 220, 605, 222, 223, 224, 225, 226, 227, 606, + 1365, 229, 0, 230, 231, 609, 233, 0, 234, 0, + 235, 612, 0, 614, 238, 239, 615, 616, 242, 0, + 243, 0, 619, 620, 246, 247, 0, 248, 249, 250, + 251, 252, 253, 254, 622, 256, 257, 258, 259, 0, + 260, 261, 262, 263, 264, 265, 266, 0, 267, 625, + 626, 270, 271, 272, 273, 274, 627, 628, 0, 630, + 0, 278, 632, 633, 281, 634, 283, 284, 285, 286, + 287, 288, 0, 0, 289, 637, 291, 638, 0, 293, + 294, 295, 296, 297, 298, 299, 300, 640, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, - 314, -1, -1, -1, -1, 319, 320, 321, 322, 323, - 324, 325, 326, 327, 328, -1, 330, 331, 332, 333, - 334, 335, -1, 337, 338, 339, 340, 341, 342, 343, - 344, 345, 346, -1, 348, 349, 350, 351, 352, 353, - 354, 355, 356, 357, 358, 359, 360, -1, 362, 363, - 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, - 374, 375, 376, 377, 378, 379, 380, 381, -1, -1, - 384, 385, 386, 387, 388, 389, 390, 391, 392, -1, - 394, 395, 396, 397, 398, -1, 400, 401, 402, 403, - 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, - 414, -1, -1, 417, 418, -1, 420, 421, 422, 423, - 424, 425, 426, -1, 428, 429, 430, -1, -1, 433, - 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, - 444, 445, 446, -1, -1, 449, 450, 451, -1, 453, - 454, 455, 456, -1, 458, 459, 460, 461, 462, 463, - 464, 465, -1, 467, 468, 469, 470, 471, 472, 473, - 474, 475, -1, -1, 478, -1, -1, 481, 482, 483, - 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, - 494, 495, 496, 497, 498, 499, 500, 501, 502, -1, - -1, -1, -1, -1, -1, 509, 510, 511, -1, -1, - -1, -1, 516, -1, 518, -1, -1, -1, -1, -1, - 524, 525, 526, 527, 3, 4, 5, 6, 7, 8, - 9, 10, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 22, 23, 24, 25, 26, 27, 28, - 29, -1, 31, 32, 33, -1, -1, -1, -1, -1, - 39, -1, -1, 42, 43, 44, -1, 46, 47, 48, - 49, 50, 51, 52, 53, 54, 55, 56, 57, -1, - 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, - 69, 70, 71, 72, 73, -1, 75, 76, 77, 78, - 79, -1, 81, -1, 83, 84, 85, 86, 87, 88, - 89, 90, 91, 92, -1, 94, 95, 96, 97, 98, - 99, -1, 101, 102, 103, 104, 105, 106, 107, 108, - 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, - -1, 120, 121, 122, 123, 124, 125, -1, -1, 128, - 129, 130, 131, -1, -1, 134, 135, 136, 137, 138, - -1, 140, 141, 142, -1, 144, 145, 146, -1, 148, - 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, - 159, 160, 161, -1, 163, 164, 165, 166, -1, 168, - -1, 170, 171, -1, 173, 174, 175, 176, 177, 178, - -1, 180, -1, 182, 183, 184, 185, -1, 187, 188, - 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, - -1, 200, 201, 202, 203, 204, 205, 206, -1, 208, - 209, 210, 211, 212, 213, 214, 215, 216, 217, -1, - 219, -1, 221, 222, 223, 224, 225, 226, 227, 228, - 229, 230, 231, -1, -1, 234, 235, 236, 237, -1, - 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, - 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, - 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, - 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, - 279, 280, 281, 282, 283, 284, 285, 286, -1, 288, - 289, -1, -1, 292, 293, 294, -1, -1, 297, 298, - 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, - 309, 310, 311, 312, 313, 314, -1, -1, -1, -1, - 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, - -1, 330, 331, 332, 333, 334, 335, -1, 337, 338, - 339, 340, 341, 342, 343, 344, 345, 346, -1, 348, - 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, - 359, 360, -1, 362, 363, 364, 365, 366, 367, 368, - 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, - 379, 380, 381, -1, -1, 384, 385, 386, 387, 388, - 389, 390, 391, 392, -1, 394, 395, 396, 397, 398, - -1, 400, 401, 402, 403, 404, 405, 406, 407, 408, - 409, 410, 411, 412, 413, 414, -1, -1, 417, 418, - -1, 420, 421, 422, 423, 424, 425, 426, -1, 428, - 429, 430, -1, -1, 433, 434, 435, 436, 437, 438, - 439, 440, 441, 442, 443, 444, 445, 446, -1, -1, - 449, 450, 451, -1, 453, 454, 455, 456, -1, 458, - 459, 460, 461, 462, 463, 464, 465, -1, 467, 468, - 469, 470, 471, 472, 473, 474, 475, -1, -1, 478, - -1, -1, 481, 482, 483, 484, 485, 486, 487, 488, - 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, - 499, 500, 501, 502, -1, -1, -1, -1, -1, -1, - 509, 510, 511, -1, -1, -1, -1, 516, -1, 518, - -1, -1, -1, -1, -1, 524, 525, 526, 527, 3, - 4, 5, 6, 7, 8, 9, 10, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 22, 23, - 24, 25, 26, 27, 28, 29, -1, 31, 32, 33, - -1, -1, -1, -1, -1, 39, -1, -1, 42, 43, - 44, -1, 46, 47, 48, 49, 50, 51, 52, 53, - 54, 55, 56, 57, -1, 59, 60, 61, 62, 63, - 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, - -1, 75, 76, 77, 78, 79, -1, 81, -1, 83, - 84, 85, 86, 87, 88, 89, 90, 91, 92, -1, - 94, 95, 96, 97, 98, 99, -1, 101, 102, 103, - 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, - 114, 115, 116, 117, 118, -1, 120, 121, 122, 123, - 124, 125, -1, -1, 128, 129, 130, 131, -1, -1, - 134, 135, 136, 137, 138, -1, 140, 141, 142, -1, - 144, 145, 146, -1, 148, 149, 150, 151, 152, 153, - 154, 155, 156, 157, 158, 159, 160, 161, -1, 163, - 164, 165, 166, -1, 168, -1, 170, 171, -1, 173, - 174, 175, 176, 177, 178, -1, 180, -1, 182, 183, - 184, 185, -1, 187, 188, 189, 190, 191, 192, 193, - 194, 195, 196, 197, 198, -1, 200, 201, 202, 203, - 204, 205, 206, -1, 208, 209, 210, 211, 212, 213, - 214, 215, 216, 217, -1, 219, -1, 221, 222, 223, - 224, 225, 226, 227, 228, 229, 230, 231, -1, -1, - 234, 235, 236, 237, -1, 239, 240, 241, 242, 243, - 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, - 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, - 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, - 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, - 284, 285, 286, -1, 288, 289, -1, -1, 292, 293, - 294, -1, -1, 297, 298, 299, 300, 301, 302, 303, + 314, 315, 316, 317, 318, 319, 320, 321, 641, 642, + 643, 325, 326, 327, 644, 0, 329, 330, 646, 332, + 0, 648, 334, 649, 336, 337, 338, 0, 339, 340, + 1366, 0, 341, 342, 343, 0, 0, 344, 345, 655, + 656, 348, 657, 658, 351, 352, 353, 354, 355, 356, + 357, 358, 359, 360, 361, 0, 0, 0, 0, 362, + 363, 663, 664, 366, 367, 665, 369, 370, 371, 0, + 372, 373, 374, 375, 376, 377, 0, 378, 379, 380, + 381, 382, 668, 384, 385, 386, 387, 0, 388, 389, + 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, + 400, 0, 401, 402, 671, 404, 405, 406, 672, 408, + 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, + 419, 420, 0, 674, 421, 422, 423, 424, 425, 426, + 675, 428, 429, 0, 677, 431, 432, 678, 434, 0, + 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, + 445, 446, 680, 448, 681, 0, 0, 450, 451, 0, + 452, 685, 454, 455, 456, 457, 458, 0, 459, 687, + 688, 0, 0, 462, 463, 691, 465, 692, 1367, 467, + 468, 694, 470, 471, 472, 473, 474, 0, 0, 475, + 476, 477, 0, 478, 479, 480, 481, 0, 482, 483, + 484, 485, 486, 699, 700, 489, 0, 490, 702, 492, + 493, 494, 495, 496, 497, 498, 0, 0, 499, 0, + 0, 500, 501, 502, 503, 504, 505, 707, 708, 709, + 710, 711, 712, 713, 714, 715, 716, 717, 517, 518, + 519, 520, 974, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 118, 119, 120, 121, 122, 123, 124, 125, 0, + 126, 127, 128, 3, 4, 0, 565, 0, 0, 0, + 0, 570, 130, 131, 0, 132, 133, 134, 572, 136, + 137, 138, 573, 574, 575, 576, 577, 0, 144, 145, + 146, 147, 148, 149, 0, 0, 150, 151, 152, 153, + 581, 582, 156, 0, 157, 158, 159, 160, 584, 0, + 586, 0, 588, 164, 165, 166, 167, 168, 589, 170, + 171, 172, 0, 173, 174, 175, 176, 177, 178, 0, + 592, 180, 181, 182, 183, 184, 185, 186, 187, 188, + 189, 594, 191, 192, 595, 194, 0, 195, 0, 196, + 197, 198, 199, 200, 201, 0, 0, 202, 203, 204, + 205, 0, 0, 206, 207, 208, 209, 210, 0, 211, + 212, 213, 0, 214, 215, 216, 0, 217, 218, 219, + 220, 605, 222, 223, 224, 225, 226, 227, 606, 0, + 229, 0, 230, 231, 609, 233, 0, 234, 0, 235, + 612, 0, 614, 238, 239, 615, 616, 242, 0, 243, + 0, 619, 620, 246, 247, 0, 248, 249, 250, 251, + 252, 253, 254, 622, 256, 257, 258, 259, 0, 260, + 261, 262, 263, 264, 265, 266, 0, 267, 625, 626, + 270, 271, 272, 273, 274, 627, 628, 0, 630, 0, + 278, 632, 633, 281, 634, 283, 284, 285, 286, 287, + 288, 0, 0, 289, 637, 291, 638, 0, 293, 294, + 295, 296, 297, 298, 299, 300, 640, 302, 303, 304, + 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, + 315, 316, 317, 318, 319, 320, 321, 641, 642, 643, + 325, 326, 327, 644, 0, 329, 330, 646, 332, 0, + 648, 334, 649, 336, 337, 338, 0, 339, 340, 0, + 0, 341, 342, 343, 0, 0, 344, 345, 655, 656, + 348, 657, 658, 351, 352, 353, 354, 355, 356, 357, + 358, 359, 360, 361, 0, 0, 0, 0, 362, 363, + 663, 664, 366, 367, 665, 369, 370, 371, 0, 372, + 373, 374, 375, 376, 377, 0, 378, 379, 380, 381, + 382, 668, 384, 385, 386, 387, 0, 388, 389, 390, + 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, + 0, 401, 402, 671, 404, 405, 406, 672, 408, 409, + 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, + 420, 0, 674, 421, 422, 423, 424, 425, 426, 675, + 428, 429, 0, 677, 431, 432, 678, 434, 0, 435, + 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, + 446, 680, 448, 681, 0, 0, 450, 451, 0, 452, + 685, 454, 455, 456, 457, 458, 0, 459, 687, 688, + 0, 0, 462, 463, 691, 465, 692, 0, 467, 468, + 694, 470, 471, 472, 473, 474, 0, 0, 475, 476, + 477, 0, 478, 479, 480, 481, 0, 482, 483, 484, + 485, 486, 699, 700, 489, 0, 490, 702, 492, 493, + 494, 495, 496, 497, 498, 0, 0, 499, 0, 0, + 500, 501, 502, 503, 504, 505, 707, 708, 709, 710, + 711, 712, 713, 714, 715, 716, 717, 517, 518, 519, + 520, 117, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 118, 119, 120, 121, 122, 123, 124, 125, 0, 126, + 127, 128, 0, 0, 0, 0, 0, 0, 0, 0, + 129, 130, 131, 0, 132, 133, 134, 135, 136, 137, + 138, 139, 140, 141, 142, 143, 0, 144, 145, 146, + 147, 148, 149, 0, 790, 150, 151, 152, 153, 154, + 155, 156, 0, 157, 158, 159, 160, 791, 0, 792, + 0, 163, 164, 165, 166, 167, 168, 169, 170, 171, + 172, 0, 173, 174, 175, 176, 177, 178, 0, 179, + 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, + 190, 191, 192, 193, 194, 0, 195, 0, 196, 197, + 198, 199, 200, 201, 0, 0, 202, 203, 204, 205, + 0, 0, 206, 207, 208, 209, 210, 0, 211, 212, + 213, 0, 214, 215, 216, 0, 217, 218, 219, 220, + 221, 222, 223, 224, 225, 226, 227, 793, 0, 229, + 0, 230, 231, 232, 233, 0, 234, 0, 235, 236, + 0, 237, 238, 239, 240, 241, 242, 0, 243, 0, + 244, 245, 246, 247, 0, 248, 249, 250, 251, 252, + 253, 254, 255, 256, 257, 258, 259, 0, 260, 261, + 262, 263, 264, 265, 266, 0, 267, 268, 269, 270, + 271, 272, 273, 274, 275, 276, 0, 277, 0, 278, + 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, + 0, 0, 289, 290, 291, 292, 0, 293, 294, 295, + 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, + 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, + 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, + 326, 327, 328, 0, 329, 330, 331, 332, 0, 795, + 334, 335, 336, 337, 338, 0, 339, 340, 0, 0, + 341, 342, 343, 0, 0, 344, 345, 346, 347, 348, + 349, 797, 351, 352, 353, 354, 355, 356, 357, 358, + 359, 360, 361, 0, 0, 0, 0, 362, 363, 798, + 365, 366, 367, 368, 369, 370, 371, 0, 372, 373, + 374, 375, 376, 377, 0, 378, 379, 380, 381, 382, + 383, 384, 385, 386, 387, 0, 388, 389, 390, 391, + 392, 393, 394, 395, 396, 397, 398, 399, 400, 0, + 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, + 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, + 0, 0, 421, 422, 423, 424, 425, 426, 427, 428, + 429, 0, 430, 431, 432, 433, 434, 0, 435, 436, + 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, + 447, 448, 800, 0, 0, 450, 451, 0, 452, 453, + 454, 455, 456, 457, 458, 0, 459, 460, 461, 0, + 0, 462, 463, 801, 465, 802, 0, 467, 468, 803, + 470, 471, 472, 473, 474, 0, 0, 475, 476, 477, + 0, 478, 479, 480, 481, 0, 482, 483, 484, 485, + 486, 487, 488, 489, 0, 490, 491, 492, 493, 494, + 495, 496, 497, 498, 0, 0, 499, 0, 0, 500, + 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, + 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, + 117, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 118, + 119, 120, 121, 122, 123, 124, 125, 0, 126, 127, + 128, 0, 0, 0, 0, 0, 0, 0, 0, 129, + 130, 131, 0, 132, 133, 134, 135, 136, 137, 138, + 139, 140, 141, 142, 143, 0, 144, 145, 146, 147, + 148, 149, 0, 0, 150, 151, 152, 153, 154, 155, + 156, 0, 157, 158, 159, 160, 161, 0, 162, 0, + 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, + 0, 173, 174, 175, 176, 177, 178, 0, 179, 180, + 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, + 191, 192, 193, 194, 0, 195, 0, 196, 197, 198, + 199, 200, 201, 0, 0, 202, 203, 204, 205, 0, + 0, 206, 207, 208, 209, 210, 0, 211, 212, 213, + 0, 214, 215, 216, 0, 217, 218, 219, 220, 221, + 222, 223, 224, 225, 226, 227, 228, 0, 229, 0, + 230, 231, 232, 233, 0, 234, 0, 235, 236, 0, + 237, 238, 239, 240, 241, 242, 0, 243, 0, 244, + 245, 246, 247, 0, 248, 249, 250, 251, 252, 253, + 254, 255, 256, 257, 258, 259, 0, 260, 261, 262, + 263, 264, 265, 266, 0, 267, 268, 269, 270, 271, + 272, 273, 274, 275, 276, 0, 277, 0, 278, 279, + 280, 281, 282, 283, 284, 285, 286, 287, 288, 0, + 0, 289, 290, 291, 292, 0, 293, 294, 295, 296, + 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, + 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, + 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, + 327, 328, 0, 329, 330, 331, 332, 0, 333, 334, + 335, 336, 337, 338, 0, 339, 340, 0, 0, 341, + 342, 343, 0, 0, 344, 345, 346, 347, 348, 349, + 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, + 360, 361, 0, 0, 0, 0, 362, 363, 364, 365, + 366, 367, 368, 369, 370, 371, 0, 372, 373, 374, + 375, 376, 377, 0, 378, 379, 380, 381, 382, 383, + 384, 385, 386, 387, 0, 388, 389, 390, 391, 392, + 393, 394, 395, 396, 397, 398, 399, 400, 0, 401, + 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, + 412, 413, 414, 415, 416, 417, 418, 419, 420, 0, + 0, 421, 422, 423, 424, 425, 426, 427, 428, 429, + 0, 430, 431, 432, 433, 434, 0, 435, 436, 437, + 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, + 448, 449, 0, 0, 450, 451, 0, 452, 453, 454, + 455, 456, 457, 458, 0, 459, 460, 461, 0, 0, + 462, 463, 464, 465, 466, 0, 467, 468, 469, 470, + 471, 472, 473, 474, 0, 0, 475, 476, 477, 0, + 478, 479, 480, 481, 0, 482, 483, 484, 485, 486, + 487, 488, 489, 0, 490, 491, 492, 493, 494, 495, + 496, 497, 498, 0, 0, 499, 0, 0, 500, 501, + 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, + 512, 513, 514, 515, 516, 517, 518, 519, 520, 528, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 118, 119, + 120, 121, 122, 123, 124, 125, 0, 126, 127, 128, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 130, + 131, 0, 132, 133, 134, 0, 136, 137, 138, 139, + 140, 0, 142, 143, 0, 144, 145, 146, 147, 148, + 149, 0, 0, 150, 151, 152, 153, 154, 155, 156, + 1770, 157, 158, 159, 160, 161, 0, 0, 1771, 163, + 164, 165, 166, 167, 168, 0, 170, 171, 172, 1772, + 173, 174, 175, 176, 177, 178, 0, 0, 180, 181, + 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, + 192, 193, 194, 0, 195, 0, 196, 197, 198, 199, + 200, 201, 0, 0, 202, 203, 204, 205, 0, 0, + 206, 207, 208, 209, 210, 0, 211, 212, 213, 0, + 214, 215, 216, 0, 217, 218, 219, 220, 221, 222, + 223, 224, 225, 226, 227, 228, 0, 229, 0, 230, + 231, 232, 233, 0, 234, 1773, 235, 0, 0, 0, + 238, 239, 529, 0, 242, 0, 243, 0, 244, 245, + 246, 247, 0, 248, 249, 250, 251, 252, 1774, 254, + 0, 256, 257, 258, 259, 0, 260, 261, 262, 263, + 264, 265, 266, 0, 267, 0, 269, 270, 271, 272, + 273, 274, 275, 276, 0, 277, 0, 278, 0, 0, + 281, 0, 283, 284, 285, 286, 287, 288, 0, 0, + 289, 0, 291, 0, 0, 293, 294, 295, 296, 297, + 298, 299, 300, 530, 302, 303, 304, 305, 306, 307, + 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, + 318, 319, 320, 321, 322, 0, 324, 325, 326, 327, + 328, 0, 329, 330, 0, 332, 0, 333, 334, 335, + 336, 337, 338, 0, 339, 340, 0, 0, 341, 342, + 343, 0, 0, 344, 345, 346, 0, 348, 0, 350, + 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, + 361, 0, 0, 0, 0, 362, 363, 364, 0, 366, + 367, 368, 369, 370, 371, 1775, 372, 373, 374, 375, + 376, 377, 0, 378, 379, 380, 381, 382, 383, 384, + 385, 386, 387, 0, 388, 389, 390, 391, 392, 393, + 394, 395, 396, 397, 398, 399, 400, 0, 401, 402, + 0, 404, 405, 406, 407, 408, 409, 410, 411, 412, + 413, 414, 415, 416, 417, 418, 419, 420, 0, 0, + 421, 422, 423, 424, 425, 426, 427, 428, 429, 0, + 0, 431, 432, 433, 434, 0, 435, 436, 437, 438, + 439, 440, 441, 442, 443, 444, 445, 446, 531, 448, + 449, 0, 0, 450, 451, 0, 452, 0, 454, 455, + 456, 457, 458, 0, 459, 460, 461, 0, 0, 462, + 463, 464, 465, 466, 0, 467, 468, 469, 470, 471, + 472, 473, 474, 0, 1776, 475, 476, 477, 0, 478, + 479, 480, 481, 0, 482, 483, 484, 485, 486, 487, + 488, 489, 0, 490, 0, 492, 493, 494, 495, 496, + 497, 498, 0, 0, 499, 0, 0, 500, 501, 502, + 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, + 513, 514, 515, 516, 517, 518, 519, 520, 528, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 118, 119, 120, + 121, 122, 123, 124, 125, 0, 126, 127, 128, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 130, 131, + 0, 132, 133, 134, 0, 136, 137, 138, 139, 140, + 0, 142, 143, 0, 144, 145, 146, 147, 148, 149, + 0, 0, 150, 151, 152, 153, 154, 155, 156, 1770, + 157, 158, 159, 160, 161, 0, 0, 0, 163, 164, + 165, 166, 167, 168, 0, 170, 171, 172, 1772, 173, + 174, 175, 176, 177, 178, 0, 0, 180, 181, 182, + 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, + 193, 194, 0, 195, 0, 196, 197, 198, 199, 200, + 201, 0, 0, 202, 203, 204, 205, 0, 0, 206, + 207, 208, 209, 210, 0, 211, 212, 213, 0, 214, + 215, 216, 0, 217, 218, 219, 220, 221, 222, 223, + 224, 225, 226, 227, 228, 0, 229, 0, 230, 231, + 232, 233, 0, 234, 1773, 235, 0, 0, 0, 238, + 239, 529, 0, 242, 0, 243, 0, 244, 245, 246, + 247, 0, 248, 249, 250, 251, 252, 253, 254, 0, + 256, 257, 258, 259, 0, 260, 261, 262, 263, 264, + 265, 266, 0, 267, 0, 269, 270, 271, 272, 273, + 274, 275, 276, 0, 277, 0, 278, 0, 0, 281, + 0, 283, 284, 285, 286, 287, 288, 0, 0, 289, + 0, 291, 2369, 0, 293, 294, 295, 296, 297, 298, + 299, 300, 530, 302, 303, 304, 305, 306, 307, 308, + 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, + 319, 320, 321, 322, 0, 324, 325, 326, 327, 328, + 0, 329, 330, 0, 332, 0, 333, 334, 335, 336, + 337, 338, 0, 339, 340, 0, 0, 341, 342, 343, + 0, 0, 344, 345, 346, 0, 348, 0, 350, 351, + 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, + 0, 0, 0, 0, 362, 363, 364, 0, 366, 367, + 368, 369, 370, 371, 1775, 372, 373, 374, 375, 376, + 377, 0, 378, 379, 380, 381, 382, 383, 384, 385, + 386, 387, 0, 388, 389, 390, 391, 392, 393, 394, + 395, 396, 397, 398, 399, 400, 0, 401, 402, 0, + 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, + 414, 415, 416, 417, 418, 419, 420, 0, 0, 421, + 422, 423, 424, 425, 426, 427, 428, 429, 0, 0, + 431, 432, 433, 434, 0, 435, 436, 437, 438, 439, + 440, 441, 442, 443, 444, 445, 446, 531, 448, 449, + 0, 0, 450, 451, 0, 452, 0, 454, 455, 456, + 457, 458, 0, 459, 460, 461, 0, 0, 462, 463, + 464, 465, 466, 0, 467, 468, 469, 470, 471, 472, + 473, 474, 0, 1776, 475, 476, 477, 0, 478, 479, + 480, 481, 0, 482, 483, 484, 485, 486, 487, 488, + 489, 0, 490, 0, 492, 493, 494, 495, 496, 497, + 498, 0, 0, 499, 0, 0, 500, 501, 502, 503, + 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, + 514, 515, 516, 517, 518, 519, 520, 528, 0, 554, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 118, 119, 120, 121, + 122, 123, 124, 125, 0, 126, 127, 128, 3, 4, + 0, 0, 0, 0, 0, 0, 0, 130, 131, 0, + 132, 133, 134, 0, 136, 137, 138, 139, 140, 0, + 142, 143, 0, 144, 145, 146, 147, 148, 149, 0, + 0, 150, 151, 152, 153, 154, 155, 156, 0, 157, + 158, 159, 160, 161, 0, 0, 0, 163, 164, 165, + 166, 167, 168, 0, 170, 171, 172, 0, 173, 174, + 175, 176, 177, 178, 0, 0, 180, 181, 182, 183, + 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, + 194, 0, 195, 0, 196, 197, 198, 199, 200, 201, + 0, 0, 202, 203, 204, 205, 0, 0, 206, 207, + 208, 209, 210, 0, 211, 212, 213, 0, 214, 215, + 216, 0, 217, 218, 219, 220, 221, 222, 223, 224, + 225, 226, 227, 228, 0, 229, 0, 230, 231, 232, + 233, 0, 234, 0, 235, 0, 0, 0, 238, 239, + 529, 0, 242, 0, 243, 0, 244, 245, 246, 247, + 0, 248, 249, 250, 251, 252, 253, 254, 0, 256, + 257, 258, 259, 0, 260, 261, 262, 263, 264, 265, + 266, 0, 267, 0, 269, 270, 271, 272, 273, 274, + 275, 276, 0, 277, 0, 278, 0, 0, 281, 0, + 283, 284, 285, 286, 287, 288, 0, 0, 289, 0, + 291, 0, 0, 293, 294, 295, 296, 297, 298, 299, + 300, 530, 302, 303, 304, 305, 306, 307, 308, 309, + 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, + 320, 321, 322, 0, 324, 325, 326, 327, 328, 0, + 329, 330, 0, 332, 0, 333, 334, 335, 336, 337, + 338, 0, 339, 340, 0, 0, 341, 342, 343, 0, + 0, 344, 345, 346, 0, 348, 0, 350, 351, 352, + 353, 354, 355, 356, 357, 358, 359, 360, 361, 0, + 0, 0, 0, 362, 363, 364, 0, 366, 367, 368, + 369, 370, 371, 0, 372, 373, 374, 375, 376, 377, + 0, 378, 379, 380, 381, 382, 383, 384, 385, 386, + 387, 0, 388, 389, 390, 391, 392, 393, 394, 395, + 396, 397, 398, 399, 400, 0, 401, 402, 0, 404, + 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, + 415, 416, 417, 418, 419, 420, 0, 0, 421, 422, + 423, 424, 425, 426, 427, 428, 429, 0, 0, 431, + 432, 433, 434, 0, 435, 436, 437, 438, 439, 440, + 441, 442, 443, 444, 445, 446, 531, 448, 449, 0, + 0, 450, 451, 0, 452, 0, 454, 455, 456, 457, + 458, 0, 459, 460, 461, 0, 0, 462, 463, 464, + 465, 466, 0, 467, 468, 469, 470, 471, 472, 473, + 474, 0, 0, 475, 476, 477, 0, 478, 479, 480, + 481, 0, 482, 483, 484, 485, 486, 487, 488, 489, + 0, 490, 0, 492, 493, 494, 495, 496, 497, 498, + 0, 0, 499, 0, 0, 500, 501, 502, 503, 504, + 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, + 515, 516, 517, 518, 519, 520, 528, 0, 554, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 118, 119, 120, 121, 122, + 123, 124, 125, 555, 126, 127, 128, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 130, 131, 0, 132, + 133, 134, 0, 136, 137, 138, 139, 140, 0, 142, + 143, 0, 144, 145, 146, 147, 148, 149, 0, 0, + 150, 151, 152, 153, 154, 155, 156, 0, 157, 158, + 159, 160, 161, 0, 0, 0, 163, 164, 165, 166, + 167, 168, 0, 170, 171, 172, 0, 173, 174, 175, + 176, 177, 178, 0, 0, 180, 181, 182, 183, 184, + 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, + 0, 195, 0, 196, 197, 198, 199, 200, 201, 0, + 0, 202, 203, 204, 205, 0, 0, 206, 207, 208, + 209, 210, 0, 211, 212, 213, 0, 214, 215, 216, + 0, 217, 218, 219, 220, 221, 222, 223, 224, 225, + 226, 227, 228, 0, 229, 0, 230, 231, 232, 233, + 0, 234, 0, 235, 0, 0, 0, 238, 239, 529, + 0, 242, 0, 243, 0, 244, 245, 246, 247, 0, + 248, 249, 250, 251, 252, 253, 254, 0, 256, 257, + 258, 259, 0, 260, 261, 262, 263, 264, 265, 266, + 0, 267, 0, 269, 270, 271, 272, 273, 274, 275, + 276, 0, 277, 0, 278, 0, 0, 281, 0, 283, + 284, 285, 286, 287, 288, 0, 0, 289, 0, 291, + 0, 0, 293, 294, 295, 296, 297, 298, 299, 300, + 530, 302, 303, 304, 305, 306, 307, 308, 309, 310, + 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, + 321, 322, 0, 324, 325, 326, 327, 328, 0, 329, + 330, 0, 332, 0, 333, 334, 335, 336, 337, 338, + 0, 339, 340, 0, 0, 341, 342, 343, 0, 0, + 344, 345, 346, 0, 348, 0, 350, 351, 352, 353, + 354, 355, 356, 357, 358, 359, 360, 361, 0, 0, + 0, 0, 362, 363, 364, 0, 366, 367, 368, 556, + 370, 371, 0, 372, 373, 374, 375, 376, 377, 0, + 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, + 0, 388, 389, 390, 391, 392, 393, 394, 395, 396, + 397, 398, 399, 400, 0, 401, 402, 0, 404, 405, + 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, + 416, 417, 418, 419, 420, 0, 0, 421, 422, 423, + 424, 425, 426, 427, 428, 429, 0, 0, 431, 432, + 433, 434, 0, 435, 436, 437, 438, 439, 440, 441, + 442, 443, 444, 445, 446, 531, 448, 449, 0, 0, + 450, 451, 0, 452, 0, 454, 455, 456, 457, 458, + 0, 459, 460, 461, 0, 0, 462, 463, 464, 465, + 466, 0, 467, 468, 469, 470, 471, 472, 473, 474, + 0, 0, 475, 476, 477, 0, 478, 479, 480, 481, + 0, 482, 483, 484, 485, 486, 487, 488, 489, 0, + 490, 0, 492, 493, 494, 495, 496, 497, 498, 0, + 0, 499, 0, 0, 500, 501, 502, 503, 504, 505, + 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, + 516, 517, 518, 519, 520, 528, 0, 554, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 118, 119, 120, 121, 122, 123, + 124, 125, 0, 126, 127, 128, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 130, 131, 0, 132, 133, + 134, 0, 136, 137, 138, 139, 140, 0, 142, 143, + 0, 144, 145, 146, 147, 148, 149, 0, 0, 150, + 151, 152, 153, 154, 155, 156, 0, 157, 158, 159, + 160, 161, 0, 0, 0, 163, 164, 165, 166, 167, + 168, 0, 170, 171, 172, 0, 173, 174, 175, 176, + 177, 178, 0, 0, 180, 181, 182, 183, 184, 185, + 186, 187, 188, 189, 190, 191, 192, 193, 194, 0, + 195, 0, 196, 197, 198, 199, 200, 201, 0, 0, + 202, 203, 204, 205, 0, 0, 206, 207, 208, 209, + 210, 0, 211, 212, 213, 0, 214, 215, 216, 0, + 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, + 227, 228, 0, 229, 0, 230, 231, 232, 233, 0, + 234, 0, 235, 0, 0, 0, 238, 239, 529, 0, + 242, 0, 243, 0, 244, 245, 246, 247, 0, 248, + 249, 250, 251, 252, 253, 254, 0, 256, 257, 258, + 259, 0, 260, 261, 262, 263, 264, 265, 266, 0, + 267, 0, 269, 270, 271, 272, 273, 274, 275, 276, + 0, 277, 0, 278, 0, 0, 281, 0, 283, 284, + 285, 286, 287, 288, 0, 0, 289, 0, 291, 0, + 0, 293, 294, 295, 296, 297, 298, 299, 300, 530, + 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, + 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, + 322, 0, 324, 325, 326, 327, 328, 0, 329, 330, + 0, 332, 0, 333, 334, 335, 336, 337, 338, 0, + 339, 340, 0, 796, 341, 342, 343, 0, 0, 344, + 345, 346, 0, 348, 0, 350, 351, 352, 353, 354, + 355, 356, 357, 358, 359, 360, 361, 0, 0, 0, + 0, 362, 363, 364, 0, 366, 367, 368, 369, 370, + 371, 0, 372, 373, 374, 375, 376, 377, 0, 378, + 379, 380, 381, 382, 383, 384, 385, 386, 387, 0, + 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, + 398, 399, 400, 0, 401, 402, 0, 404, 405, 406, + 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, + 417, 418, 419, 420, 0, 0, 421, 422, 423, 424, + 425, 426, 427, 428, 429, 0, 0, 431, 432, 433, + 434, 0, 435, 436, 437, 438, 439, 440, 441, 442, + 443, 444, 445, 446, 531, 448, 449, 0, 0, 450, + 451, 0, 452, 0, 454, 455, 456, 457, 458, 0, + 459, 460, 461, 0, 0, 462, 463, 464, 465, 466, + 0, 467, 468, 469, 470, 471, 472, 473, 474, 0, + 0, 475, 476, 477, 0, 478, 479, 480, 481, 0, + 482, 483, 484, 485, 486, 487, 488, 489, 0, 490, + 0, 492, 493, 494, 495, 496, 497, 498, 0, 0, + 499, 0, 0, 500, 501, 502, 503, 504, 505, 506, + 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, + 517, 518, 519, 520, 528, 0, 554, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 118, 119, 120, 121, 122, 123, 124, + 125, 0, 126, 127, 128, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 130, 131, 0, 132, 133, 134, + 0, 136, 137, 138, 139, 140, 0, 142, 143, 0, + 144, 145, 146, 147, 148, 149, 0, 0, 150, 151, + 152, 153, 154, 155, 156, 0, 157, 158, 159, 160, + 161, 0, 0, 0, 163, 164, 165, 166, 167, 168, + 0, 170, 171, 172, 0, 173, 174, 175, 176, 177, + 178, 0, 0, 180, 181, 182, 183, 184, 185, 186, + 187, 188, 189, 190, 191, 192, 193, 194, 0, 195, + 0, 196, 197, 198, 199, 200, 201, 0, 0, 202, + 203, 204, 205, 0, 0, 206, 207, 208, 209, 210, + 0, 211, 212, 213, 0, 214, 215, 216, 0, 217, + 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, + 228, 0, 229, 0, 230, 231, 232, 233, 0, 234, + 0, 235, 0, 0, 0, 238, 239, 529, 0, 242, + 0, 243, 0, 244, 245, 246, 247, 0, 248, 249, + 250, 251, 252, 904, 254, 0, 256, 257, 258, 259, + 0, 260, 261, 262, 263, 264, 265, 266, 0, 267, + 0, 269, 270, 271, 272, 273, 274, 275, 276, 0, + 277, 0, 278, 0, 0, 281, 0, 283, 284, 285, + 286, 287, 288, 0, 0, 289, 0, 291, 0, 0, + 293, 294, 295, 296, 297, 298, 299, 300, 530, 302, + 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, + 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, + 0, 324, 325, 326, 327, 328, 0, 329, 330, 0, + 332, 0, 333, 334, 335, 336, 337, 338, 0, 339, + 340, 0, 796, 341, 342, 343, 0, 0, 344, 345, + 346, 0, 348, 0, 350, 351, 352, 353, 354, 355, + 356, 357, 358, 359, 360, 361, 0, 0, 0, 0, + 362, 363, 364, 0, 366, 367, 368, 369, 370, 371, + 0, 372, 373, 374, 375, 376, 377, 0, 378, 379, + 380, 381, 382, 383, 384, 385, 386, 387, 0, 388, + 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, + 399, 400, 0, 401, 402, 0, 404, 405, 406, 407, + 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, + 418, 419, 420, 0, 0, 421, 422, 423, 424, 425, + 426, 427, 428, 429, 0, 0, 431, 432, 433, 434, + 0, 435, 436, 437, 438, 439, 440, 441, 442, 443, + 444, 445, 446, 531, 448, 449, 0, 0, 450, 451, + 0, 452, 0, 454, 455, 456, 457, 458, 0, 459, + 460, 461, 0, 0, 462, 463, 464, 465, 466, 0, + 467, 468, 469, 470, 471, 472, 473, 474, 0, 0, + 475, 476, 477, 0, 478, 479, 480, 481, 0, 482, + 483, 484, 485, 486, 487, 488, 489, 0, 490, 0, + 492, 493, 494, 495, 496, 497, 498, 0, 0, 499, + 0, 0, 500, 501, 502, 503, 504, 505, 506, 507, + 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, + 518, 519, 520, 528, 0, 554, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 118, 119, 120, 121, 122, 123, 124, 125, + 948, 126, 127, 128, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 130, 131, 0, 132, 133, 134, 0, + 136, 137, 138, 139, 140, 0, 142, 143, 0, 144, + 145, 146, 147, 148, 149, 0, 0, 150, 151, 152, + 153, 154, 155, 156, 0, 157, 158, 159, 160, 161, + 0, 0, 0, 163, 164, 165, 166, 167, 168, 0, + 170, 171, 172, 0, 173, 174, 175, 176, 177, 178, + 0, 0, 180, 181, 182, 183, 184, 185, 186, 187, + 188, 189, 190, 191, 192, 193, 194, 0, 195, 0, + 196, 197, 198, 199, 200, 201, 0, 0, 202, 203, + 204, 205, 0, 0, 206, 207, 208, 209, 210, 0, + 211, 212, 213, 0, 214, 215, 216, 0, 217, 218, + 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, + 0, 229, 0, 230, 231, 232, 233, 0, 234, 0, + 235, 0, 0, 0, 238, 239, 529, 0, 242, 0, + 243, 0, 244, 245, 246, 247, 0, 248, 249, 250, + 251, 252, 253, 254, 0, 256, 257, 258, 259, 0, + 260, 261, 262, 263, 264, 265, 266, 0, 267, 0, + 269, 270, 271, 272, 273, 274, 275, 276, 0, 277, + 0, 278, 0, 0, 281, 0, 283, 284, 285, 286, + 287, 288, 0, 0, 289, 0, 291, 0, 0, 293, + 294, 295, 296, 297, 298, 299, 300, 530, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, - 314, -1, -1, -1, -1, 319, 320, 321, 322, 323, - 324, 325, 326, 327, 328, -1, 330, 331, 332, 333, - 334, 335, -1, 337, 338, 339, 340, 341, 342, 343, - 344, 345, 346, -1, 348, 349, 350, 351, 352, 353, - 354, 355, 356, 357, 358, 359, 360, -1, 362, 363, - 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, - 374, 375, 376, 377, 378, 379, 380, 381, -1, -1, - 384, 385, 386, 387, 388, 389, 390, 391, 392, -1, - 394, 395, 396, 397, 398, -1, 400, 401, 402, 403, + 314, 315, 316, 317, 318, 319, 320, 321, 322, 0, + 324, 325, 326, 327, 328, 0, 329, 330, 0, 332, + 0, 333, 334, 335, 336, 337, 338, 0, 339, 340, + 0, 0, 341, 342, 343, 0, 0, 344, 345, 346, + 0, 348, 0, 350, 351, 352, 353, 354, 355, 356, + 357, 358, 359, 360, 361, 0, 0, 0, 0, 362, + 363, 364, 0, 366, 367, 368, 369, 370, 371, 0, + 372, 373, 374, 375, 376, 377, 0, 378, 379, 380, + 381, 382, 383, 384, 385, 386, 387, 0, 388, 389, + 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, + 400, 0, 401, 402, 0, 404, 405, 406, 407, 408, + 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, + 419, 420, 0, 0, 421, 422, 423, 424, 425, 426, + 427, 428, 429, 0, 0, 431, 432, 433, 434, 0, + 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, + 445, 446, 531, 448, 449, 0, 0, 450, 451, 0, + 452, 0, 454, 455, 456, 457, 458, 0, 459, 460, + 461, 0, 0, 462, 463, 464, 465, 466, 0, 467, + 468, 469, 470, 471, 472, 473, 474, 0, 0, 475, + 476, 477, 0, 478, 479, 480, 481, 0, 482, 483, + 484, 485, 486, 487, 488, 489, 0, 490, 0, 492, + 493, 494, 495, 496, 497, 498, 0, 0, 499, 0, + 0, 500, 501, 502, 503, 504, 505, 506, 507, 508, + 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, + 519, 520, 528, 0, 554, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 118, 119, 120, 121, 122, 123, 124, 125, 0, + 126, 127, 128, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 130, 131, 0, 132, 133, 134, 0, 136, + 137, 138, 139, 140, 0, 142, 143, 0, 144, 145, + 146, 147, 148, 149, 0, 0, 150, 151, 152, 153, + 154, 155, 156, 0, 157, 158, 159, 160, 161, 0, + 0, 0, 163, 164, 165, 166, 167, 168, 0, 170, + 171, 172, 0, 173, 174, 175, 176, 177, 178, 0, + 0, 180, 181, 182, 183, 184, 185, 186, 187, 188, + 189, 190, 191, 192, 193, 194, 0, 195, 0, 196, + 197, 198, 199, 200, 201, 0, 0, 202, 203, 204, + 205, 0, 0, 206, 207, 208, 209, 210, 0, 211, + 212, 213, 0, 214, 215, 216, 0, 217, 218, 219, + 220, 221, 222, 223, 224, 225, 1184, 227, 228, 0, + 229, 0, 230, 231, 232, 233, 0, 234, 0, 235, + 0, 0, 0, 238, 239, 529, 0, 242, 0, 243, + 0, 244, 245, 246, 247, 0, 248, 249, 250, 251, + 252, 253, 254, 0, 256, 257, 258, 259, 0, 260, + 261, 262, 263, 264, 265, 266, 0, 267, 0, 269, + 270, 271, 272, 273, 274, 275, 276, 0, 277, 0, + 278, 0, 0, 281, 0, 283, 284, 285, 286, 287, + 288, 0, 0, 289, 0, 291, 0, 0, 293, 294, + 295, 296, 297, 298, 299, 300, 530, 302, 303, 304, + 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, + 315, 316, 317, 318, 319, 320, 321, 322, 0, 324, + 325, 326, 327, 328, 0, 329, 330, 0, 332, 0, + 333, 334, 335, 336, 337, 338, 0, 339, 340, 0, + 796, 341, 342, 343, 0, 0, 344, 345, 346, 0, + 348, 0, 350, 351, 352, 353, 354, 355, 356, 357, + 358, 359, 360, 361, 0, 0, 0, 0, 362, 363, + 364, 0, 366, 367, 368, 369, 370, 371, 0, 372, + 373, 374, 375, 376, 377, 0, 378, 379, 380, 381, + 382, 383, 384, 385, 386, 387, 0, 388, 389, 390, + 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, + 0, 401, 402, 0, 404, 405, 406, 407, 408, 409, + 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, + 420, 0, 0, 421, 422, 423, 424, 425, 426, 427, + 428, 429, 0, 0, 431, 432, 433, 434, 0, 435, + 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, + 446, 531, 448, 449, 0, 0, 450, 451, 0, 452, + 0, 454, 455, 456, 457, 458, 0, 459, 460, 461, + 0, 0, 462, 463, 464, 465, 466, 0, 467, 468, + 469, 470, 471, 472, 473, 474, 0, 0, 475, 476, + 477, 0, 478, 479, 480, 481, 0, 482, 483, 484, + 485, 486, 487, 488, 489, 0, 490, 0, 492, 493, + 494, 495, 496, 497, 498, 0, 0, 499, 0, 0, + 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, + 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, + 520, 528, 0, 554, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 118, 119, 120, 121, 122, 123, 124, 125, 0, 126, + 127, 128, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 130, 131, 0, 132, 133, 134, 0, 136, 137, + 138, 139, 140, 0, 142, 143, 0, 144, 145, 146, + 147, 148, 149, 0, 0, 150, 151, 152, 153, 154, + 155, 156, 0, 157, 158, 159, 160, 161, 0, 0, + 0, 163, 164, 165, 166, 167, 168, 0, 170, 171, + 172, 0, 173, 174, 175, 176, 177, 178, 0, 0, + 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, + 190, 191, 192, 193, 194, 0, 195, 0, 196, 197, + 198, 199, 200, 201, 0, 0, 202, 203, 204, 205, + 0, 0, 206, 207, 208, 209, 210, 0, 211, 212, + 213, 0, 214, 215, 216, 0, 217, 218, 219, 220, + 221, 222, 223, 224, 225, 226, 227, 228, 0, 229, + 0, 230, 231, 232, 233, 0, 234, 0, 235, 0, + 0, 0, 238, 239, 529, 0, 1990, 0, 243, 0, + 244, 245, 246, 247, 0, 248, 249, 250, 251, 252, + 253, 254, 0, 256, 257, 258, 259, 0, 260, 261, + 262, 263, 264, 265, 266, 0, 267, 0, 269, 270, + 271, 272, 273, 274, 275, 276, 0, 277, 0, 278, + 0, 0, 281, 0, 283, 284, 285, 286, 287, 288, + 0, 0, 289, 0, 291, 0, 0, 293, 294, 1991, + 296, 297, 298, 299, 300, 530, 302, 303, 304, 305, + 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, + 316, 317, 318, 319, 320, 321, 322, 0, 324, 325, + 326, 327, 328, 0, 329, 330, 0, 332, 0, 333, + 334, 335, 336, 337, 338, 0, 339, 340, 0, 0, + 341, 342, 343, 0, 0, 344, 345, 346, 0, 348, + 0, 350, 351, 352, 353, 354, 355, 356, 357, 358, + 359, 360, 361, 0, 0, 0, 0, 362, 363, 364, + 0, 366, 367, 368, 369, 370, 371, 0, 372, 373, + 374, 375, 376, 377, 0, 378, 379, 380, 381, 382, + 383, 384, 385, 386, 387, 0, 388, 389, 390, 391, + 392, 393, 394, 395, 396, 397, 398, 399, 400, 0, + 401, 402, 0, 404, 405, 406, 407, 408, 409, 410, + 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, + 0, 0, 421, 422, 423, 424, 425, 426, 427, 428, + 429, 0, 0, 431, 432, 433, 434, 0, 435, 436, + 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, + 531, 448, 449, 0, 0, 450, 451, 1992, 452, 0, + 454, 1993, 456, 1994, 458, 0, 459, 460, 461, 0, + 0, 462, 463, 464, 465, 466, 0, 467, 468, 469, + 470, 471, 472, 473, 474, 0, 0, 475, 476, 1995, + 0, 478, 479, 480, 481, 0, 482, 483, 484, 485, + 486, 487, 488, 489, 0, 490, 0, 492, 493, 494, + 495, 496, 497, 498, 0, 0, 499, 0, 0, 500, + 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, + 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, + 528, 0, 554, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 118, + 119, 120, 121, 122, 123, 124, 125, 0, 126, 127, + 128, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 130, 131, 0, 132, 133, 134, 0, 136, 137, 138, + 139, 140, 0, 142, 143, 0, 144, 145, 146, 147, + 148, 149, 0, 0, 150, 151, 152, 153, 154, 155, + 156, 0, 157, 158, 159, 160, 161, 0, 0, 0, + 163, 164, 165, 166, 167, 168, 0, 170, 171, 172, + 0, 173, 174, 175, 176, 177, 178, 0, 0, 180, + 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, + 191, 192, 193, 194, 0, 195, 0, 196, 197, 198, + 199, 200, 201, 0, 0, 202, 203, 204, 205, 0, + 0, 206, 207, 208, 209, 210, 0, 211, 212, 213, + 0, 214, 215, 216, 0, 217, 218, 219, 220, 221, + 222, 223, 224, 225, 226, 227, 228, 0, 229, 0, + 230, 231, 232, 233, 0, 234, 0, 235, 0, 0, + 0, 238, 239, 529, 0, 242, 0, 243, 0, 244, + 245, 246, 247, 0, 248, 249, 250, 251, 252, 253, + 254, 0, 256, 257, 258, 259, 0, 260, 261, 262, + 263, 264, 265, 266, 0, 267, 0, 269, 270, 271, + 272, 273, 274, 275, 276, 0, 277, 0, 278, 0, + 0, 281, 0, 283, 284, 285, 286, 287, 288, 0, + 0, 289, 0, 291, 0, 0, 293, 294, 295, 296, + 297, 298, 299, 300, 530, 302, 303, 304, 305, 306, + 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, + 317, 318, 319, 320, 321, 322, 0, 324, 325, 326, + 327, 328, 0, 329, 330, 0, 332, 0, 333, 334, + 335, 336, 337, 338, 0, 339, 340, 0, 0, 341, + 342, 343, 0, 0, 344, 345, 346, 0, 348, 0, + 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, + 360, 361, 0, 0, 0, 0, 362, 363, 364, 0, + 366, 367, 368, 369, 370, 371, 0, 372, 373, 374, + 375, 376, 377, 0, 378, 379, 380, 381, 382, 383, + 384, 385, 386, 387, 0, 388, 389, 390, 391, 392, + 393, 394, 395, 396, 397, 398, 399, 400, 0, 401, + 402, 0, 404, 405, 406, 407, 408, 409, 410, 411, + 412, 413, 414, 415, 416, 417, 418, 419, 420, 0, + 0, 421, 422, 423, 424, 425, 426, 427, 428, 429, + 0, 0, 431, 432, 433, 434, 0, 435, 436, 437, + 438, 439, 440, 441, 442, 443, 444, 445, 446, 531, + 448, 449, 0, 0, 450, 451, 0, 452, 0, 454, + 455, 456, 457, 458, 0, 459, 460, 461, 0, 0, + 462, 463, 464, 465, 466, 0, 467, 468, 469, 470, + 471, 472, 473, 474, 0, 0, 475, 476, 477, 0, + 478, 479, 480, 481, 0, 482, 483, 484, 485, 486, + 487, 488, 489, 0, 490, 0, 492, 493, 494, 495, + 496, 497, 498, 0, 0, 499, 0, 0, 500, 501, + 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, + 512, 513, 514, 515, 516, 517, 518, 519, 520, 528, + 0, 821, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 118, 119, + 120, 121, 122, 123, 124, 125, 0, 126, 127, 128, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 130, + 131, 0, 132, 133, 134, 0, 136, 137, 138, 139, + 140, 0, 142, 143, 0, 144, 145, 146, 147, 148, + 149, 0, 0, 150, 151, 152, 153, 154, 155, 156, + 0, 157, 158, 159, 160, 161, 0, 0, 0, 163, + 164, 165, 166, 167, 168, 0, 170, 171, 172, 0, + 173, 174, 175, 176, 177, 178, 0, 0, 180, 181, + 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, + 192, 193, 194, 0, 195, 0, 196, 197, 198, 199, + 200, 201, 0, 0, 202, 203, 204, 205, 0, 0, + 206, 207, 208, 209, 210, 0, 211, 212, 213, 0, + 214, 215, 216, 0, 217, 218, 219, 220, 221, 222, + 223, 224, 225, 226, 227, 228, 0, 229, 0, 230, + 231, 232, 233, 0, 234, 0, 235, 0, 0, 0, + 238, 239, 529, 0, 242, 0, 243, 0, 244, 245, + 246, 247, 0, 248, 249, 250, 251, 252, 253, 254, + 0, 256, 257, 258, 259, 0, 260, 261, 262, 263, + 264, 265, 266, 0, 267, 0, 269, 270, 271, 272, + 273, 274, 275, 276, 0, 277, 0, 278, 0, 0, + 281, 0, 283, 284, 285, 286, 287, 288, 0, 0, + 289, 0, 291, 0, 0, 293, 294, 295, 296, 297, + 298, 299, 300, 530, 302, 303, 304, 305, 306, 307, + 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, + 318, 319, 320, 321, 322, 0, 324, 325, 326, 327, + 328, 0, 329, 330, 0, 332, 0, 333, 334, 335, + 336, 337, 338, 0, 339, 340, 0, 0, 341, 342, + 343, 0, 0, 344, 345, 346, 0, 348, 0, 350, + 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, + 361, 0, 0, 0, 0, 362, 363, 364, 0, 366, + 367, 368, 369, 370, 371, 0, 372, 373, 374, 375, + 376, 377, 0, 378, 379, 380, 381, 382, 383, 384, + 385, 386, 387, 0, 388, 389, 390, 391, 392, 393, + 394, 395, 396, 397, 398, 399, 400, 0, 401, 402, + 0, 404, 405, 406, 407, 408, 409, 410, 411, 412, + 413, 414, 415, 416, 417, 418, 419, 420, 0, 0, + 421, 422, 423, 424, 425, 426, 427, 428, 429, 0, + 0, 431, 432, 433, 434, 0, 435, 436, 437, 438, + 439, 440, 441, 442, 443, 444, 445, 446, 531, 448, + 449, 0, 0, 450, 451, 0, 452, 0, 454, 455, + 456, 457, 458, 0, 459, 460, 461, 0, 0, 462, + 463, 464, 465, 466, 0, 467, 468, 469, 470, 471, + 472, 473, 474, 0, 0, 475, 476, 477, 0, 478, + 479, 480, 481, 0, 482, 483, 484, 485, 486, 487, + 488, 489, 0, 490, 0, 492, 493, 494, 495, 496, + 497, 498, 0, 0, 499, 0, 0, 500, 501, 502, + 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, + 513, 514, 515, 516, 517, 518, 519, 520, 528, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 118, 119, 120, + 121, 122, 123, 124, 125, 827, 126, 127, 128, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 130, 131, + 0, 132, 133, 134, 0, 136, 137, 138, 139, 140, + 0, 142, 143, 0, 144, 145, 146, 147, 148, 149, + 0, 0, 150, 151, 152, 153, 154, 155, 156, 0, + 157, 158, 159, 160, 161, 0, 0, 0, 163, 164, + 165, 166, 167, 168, 0, 170, 171, 172, 0, 173, + 174, 175, 176, 177, 178, 0, 0, 180, 181, 182, + 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, + 193, 194, 0, 195, 0, 196, 197, 198, 199, 200, + 201, 0, 0, 202, 203, 204, 205, 0, 0, 206, + 207, 208, 209, 210, 0, 211, 212, 213, 0, 214, + 215, 216, 0, 217, 218, 219, 220, 221, 222, 223, + 224, 225, 226, 227, 228, 0, 229, 0, 230, 231, + 232, 233, 0, 234, 0, 235, 0, 0, 0, 238, + 239, 529, 0, 828, 0, 243, 0, 244, 245, 246, + 247, 0, 248, 249, 250, 251, 252, 253, 254, 0, + 256, 257, 258, 259, 0, 260, 261, 262, 263, 264, + 265, 266, 0, 267, 0, 269, 270, 271, 272, 273, + 274, 275, 276, 0, 277, 0, 278, 0, 0, 281, + 0, 283, 284, 285, 286, 287, 288, 0, 0, 289, + 0, 291, 0, 0, 293, 294, 829, 296, 297, 298, + 299, 300, 530, 302, 303, 304, 305, 306, 307, 308, + 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, + 319, 320, 321, 322, 0, 324, 325, 326, 327, 328, + 0, 329, 330, 0, 332, 0, 333, 334, 335, 336, + 337, 338, 0, 339, 340, 0, 0, 341, 342, 343, + 0, 0, 344, 345, 346, 0, 348, 0, 350, 351, + 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, + 0, 0, 0, 0, 362, 363, 364, 0, 366, 367, + 368, 369, 370, 371, 0, 372, 373, 374, 375, 376, + 377, 0, 378, 379, 380, 381, 382, 383, 384, 385, + 386, 387, 0, 388, 389, 390, 391, 392, 393, 394, + 395, 396, 397, 398, 399, 400, 0, 401, 402, 0, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, - 414, -1, -1, 417, 418, -1, 420, 421, 422, 423, - 424, 425, 426, -1, 428, 429, 430, -1, -1, 433, - 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, - 444, 445, 446, -1, -1, 449, 450, 451, -1, 453, - 454, 455, 456, -1, 458, 459, 460, 461, 462, 463, - 464, 465, -1, 467, 468, 469, 470, 471, 472, 473, - 474, 475, -1, -1, 478, -1, -1, 481, 482, 483, - 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, - 494, 495, 496, 497, 498, 499, 500, 501, 502, -1, - -1, -1, -1, -1, -1, 509, 510, 511, -1, -1, - -1, -1, 516, -1, 518, -1, -1, -1, -1, -1, - 524, 525, 526, 527, 3, 4, 5, 6, 7, 8, - 9, 10, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 22, 23, 24, 25, 26, 27, 28, - 29, -1, 31, 32, 33, -1, -1, -1, -1, -1, - 39, -1, -1, 42, 43, 44, -1, 46, 47, 48, - 49, 50, 51, 52, 53, 54, 55, 56, 57, -1, - 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, - 69, 70, 71, 72, 73, -1, 75, 76, 77, 78, - 79, -1, 81, -1, 83, 84, 85, 86, 87, 88, - 89, 90, 91, 92, -1, 94, 95, 96, 97, 98, - 99, -1, 101, 102, 103, 104, 105, 106, 107, 108, - 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, - -1, 120, 121, 122, 123, 124, 125, -1, -1, 128, - 129, 130, 131, -1, -1, 134, 135, 136, 137, 138, - -1, 140, 141, 142, -1, 144, 145, 146, -1, 148, - 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, - 159, 160, 161, -1, 163, 164, 165, 166, -1, 168, - -1, 170, 171, -1, 173, 174, 175, 176, 177, 178, - -1, 180, -1, 182, 183, 184, 185, -1, 187, 188, - 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, - -1, 200, 201, 202, 203, 204, 205, 206, -1, 208, - 209, 210, 211, 212, 213, 214, 215, 216, 217, -1, - 219, -1, 221, 222, 223, 224, 225, 226, 227, 228, - 229, 230, 231, -1, -1, 234, 235, 236, 237, -1, - 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, - 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, - 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, - 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, - 279, 280, 281, 282, 283, 284, 285, 286, -1, 288, - 289, -1, -1, 292, 293, 294, -1, -1, 297, 298, - 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, - 309, 310, 311, 312, 313, 314, -1, -1, -1, -1, - 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, - -1, 330, 331, 332, 333, 334, 335, -1, 337, 338, - 339, 340, 341, 342, 343, 344, 345, 346, -1, 348, - 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, - 359, 360, -1, 362, 363, 364, 365, 366, 367, 368, - 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, - 379, 380, 381, -1, -1, 384, 385, 386, 387, 388, - 389, 390, 391, 392, -1, 394, 395, 396, 397, 398, - -1, 400, 401, 402, 403, 404, 405, 406, 407, 408, - 409, 410, 411, 412, 413, 414, -1, -1, 417, 418, - -1, 420, 421, 422, 423, 424, 425, 426, -1, 428, - 429, 430, -1, -1, 433, 434, 435, 436, 437, 438, - 439, 440, 441, 442, 443, 444, 445, 446, -1, -1, - 449, 450, 451, -1, 453, 454, 455, 456, -1, 458, - 459, 460, 461, 462, 463, 464, 465, -1, 467, 468, - 469, 470, 471, 472, 473, 474, 475, -1, -1, 478, - -1, -1, 481, 482, 483, 484, 485, 486, 487, 488, - 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, - 499, 500, 501, 502, -1, -1, -1, -1, -1, -1, - 509, 510, 511, -1, -1, -1, -1, 516, -1, 518, - -1, -1, -1, -1, -1, 524, 525, 526, 527, 3, - 4, 5, 6, 7, 8, 9, 10, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 22, 23, - 24, 25, 26, 27, 28, 29, -1, 31, 32, 33, - -1, -1, -1, -1, -1, 39, -1, -1, 42, 43, - 44, -1, 46, 47, 48, 49, 50, 51, 52, 53, - 54, 55, 56, 57, -1, 59, 60, 61, 62, 63, - 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, - -1, 75, 76, 77, 78, 79, -1, 81, -1, 83, - 84, 85, 86, 87, 88, 89, 90, 91, 92, -1, - 94, 95, 96, 97, 98, 99, -1, 101, 102, 103, - 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, - 114, 115, 116, -1, 118, -1, 120, 121, 122, 123, - 124, 125, -1, -1, 128, 129, 130, 131, -1, -1, - 134, 135, 136, 137, 138, -1, 140, 141, 142, -1, - 144, 145, 146, -1, 148, 149, 150, 151, 152, 153, - 154, 155, 156, 157, 158, 159, 160, 161, -1, 163, - 164, 165, 166, -1, 168, -1, 170, 171, -1, 173, - 174, 175, 176, 177, 178, -1, 180, -1, 182, 183, - 184, 185, -1, 187, 188, 189, 190, 191, 192, 193, - 194, 195, 196, 197, 198, -1, 200, 201, 202, 203, - 204, 205, 206, -1, 208, 209, 210, 211, 212, 213, - 214, 215, 216, 217, -1, 219, -1, 221, 222, 223, - 224, 225, 226, 227, 228, 229, 230, 231, -1, -1, - 234, 235, 236, 237, -1, 239, 240, 241, 242, 243, - 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, - 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, - 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, - 274, -1, 276, 277, 278, 279, 280, 281, 282, 283, - 284, 285, 286, -1, 288, 289, -1, -1, 292, 293, - 294, -1, -1, 297, 298, 299, 300, 301, 302, 303, + 414, 415, 416, 417, 418, 419, 420, 0, 0, 421, + 422, 423, 424, 830, 426, 427, 428, 429, 0, 0, + 431, 432, 433, 434, 0, 435, 436, 437, 438, 439, + 440, 441, 442, 443, 444, 445, 446, 531, 448, 449, + 0, 0, 450, 451, 0, 452, 0, 454, 455, 456, + 457, 458, 0, 459, 831, 461, 0, 0, 832, 463, + 464, 465, 466, 0, 467, 468, 469, 470, 471, 472, + 473, 474, 0, 0, 475, 476, 477, 0, 478, 479, + 480, 481, 0, 482, 483, 484, 485, 486, 487, 488, + 833, 0, 490, 0, 492, 493, 494, 495, 496, 497, + 498, 0, 0, 499, 0, 0, 500, 501, 502, 503, + 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, + 514, 515, 516, 517, 518, 519, 520, 528, 0, 554, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 118, 119, 120, 121, + 122, 123, 124, 125, 0, 126, 127, 128, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 130, 131, 0, + 132, 133, 134, 0, 136, 137, 138, 139, 140, 0, + 142, 143, 0, 144, 145, 146, 147, 148, 149, 0, + 0, 150, 151, 152, 153, 154, 155, 156, 0, 157, + 158, 159, 160, 161, 0, 0, 0, 163, 164, 165, + 166, 167, 168, 0, 170, 171, 172, 0, 173, 174, + 175, 176, 177, 178, 0, 0, 180, 181, 182, 183, + 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, + 194, 0, 195, 0, 196, 197, 198, 199, 200, 201, + 0, 0, 202, 203, 204, 205, 0, 0, 206, 207, + 208, 209, 210, 0, 211, 212, 213, 0, 214, 215, + 216, 0, 217, 218, 219, 220, 221, 222, 223, 224, + 225, 226, 227, 228, 0, 229, 0, 230, 231, 232, + 233, 0, 234, 0, 235, 0, 0, 0, 238, 239, + 529, 0, 242, 0, 243, 0, 244, 245, 246, 247, + 0, 248, 249, 250, 251, 252, 253, 254, 0, 256, + 257, 258, 259, 0, 260, 261, 262, 263, 264, 265, + 266, 0, 267, 0, 269, 270, 271, 272, 273, 274, + 275, 276, 0, 277, 0, 278, 0, 0, 281, 0, + 283, 284, 285, 286, 287, 288, 0, 0, 289, 0, + 291, 0, 0, 293, 294, 295, 296, 297, 298, 299, + 300, 530, 302, 303, 304, 305, 306, 307, 308, 309, + 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, + 320, 321, 322, 0, 324, 325, 326, 327, 328, 0, + 329, 330, 0, 332, 0, 333, 334, 335, 336, 337, + 338, 0, 339, 340, 0, 0, 341, 342, 343, 0, + 0, 344, 345, 346, 0, 348, 0, 350, 351, 352, + 353, 354, 355, 356, 357, 358, 359, 360, 361, 0, + 0, 0, 0, 362, 363, 364, 0, 366, 367, 368, + 369, 370, 371, 0, 372, 373, 374, 375, 376, 377, + 0, 378, 379, 380, 381, 382, 383, 384, 385, 866, + 387, 0, 388, 389, 390, 391, 392, 393, 394, 395, + 396, 397, 398, 399, 400, 0, 401, 402, 0, 404, + 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, + 415, 416, 417, 418, 419, 420, 0, 0, 421, 422, + 423, 424, 425, 426, 427, 428, 429, 0, 0, 431, + 432, 433, 434, 0, 435, 436, 437, 438, 439, 440, + 441, 442, 443, 444, 445, 446, 531, 448, 449, 0, + 0, 450, 451, 0, 452, 0, 454, 455, 456, 457, + 458, 0, 459, 460, 461, 0, 0, 462, 463, 464, + 465, 466, 0, 467, 468, 469, 470, 471, 472, 473, + 474, 0, 0, 475, 476, 477, 0, 478, 479, 480, + 481, 0, 482, 483, 484, 485, 486, 487, 488, 489, + 0, 490, 0, 492, 493, 494, 495, 496, 497, 498, + 0, 0, 499, 0, 0, 500, 501, 502, 503, 504, + 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, + 515, 516, 517, 518, 519, 520, 528, 0, 554, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 118, 119, 120, 121, 122, + 123, 124, 125, 0, 126, 127, 128, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 130, 131, 0, 132, + 133, 134, 0, 136, 137, 138, 139, 140, 0, 142, + 143, 0, 144, 145, 146, 147, 148, 149, 0, 0, + 150, 151, 152, 153, 154, 155, 156, 0, 157, 158, + 159, 160, 161, 0, 0, 0, 163, 164, 165, 166, + 167, 168, 0, 170, 171, 172, 0, 173, 174, 175, + 176, 177, 178, 0, 0, 180, 181, 182, 183, 184, + 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, + 0, 195, 0, 196, 197, 198, 199, 200, 201, 0, + 0, 202, 203, 204, 205, 0, 0, 206, 207, 208, + 209, 210, 0, 211, 212, 213, 0, 214, 215, 216, + 0, 217, 218, 219, 220, 221, 222, 223, 224, 225, + 226, 227, 228, 0, 229, 0, 230, 231, 232, 233, + 0, 234, 0, 235, 0, 0, 0, 238, 239, 529, + 0, 242, 0, 243, 0, 244, 245, 246, 247, 0, + 248, 249, 250, 251, 252, 899, 254, 0, 256, 257, + 258, 259, 0, 260, 261, 262, 263, 264, 265, 266, + 0, 267, 0, 269, 270, 271, 272, 273, 274, 275, + 276, 0, 277, 0, 278, 0, 0, 281, 0, 283, + 284, 285, 286, 287, 288, 0, 0, 289, 0, 291, + 0, 0, 293, 294, 295, 296, 297, 298, 299, 300, + 530, 302, 303, 304, 305, 306, 307, 308, 309, 310, + 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, + 321, 322, 0, 324, 325, 326, 327, 328, 0, 329, + 330, 0, 332, 0, 333, 334, 335, 336, 337, 338, + 0, 339, 340, 0, 0, 341, 342, 343, 0, 0, + 344, 345, 346, 0, 348, 0, 350, 351, 352, 353, + 354, 355, 356, 357, 358, 359, 360, 361, 0, 0, + 0, 0, 362, 363, 364, 0, 366, 367, 368, 369, + 370, 371, 0, 372, 373, 374, 375, 376, 377, 0, + 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, + 0, 388, 389, 390, 391, 392, 393, 394, 395, 396, + 397, 398, 399, 400, 0, 401, 402, 0, 404, 405, + 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, + 416, 417, 418, 419, 420, 0, 0, 421, 422, 423, + 424, 425, 426, 427, 428, 429, 0, 0, 431, 432, + 433, 434, 0, 435, 436, 437, 438, 439, 440, 441, + 442, 443, 444, 445, 446, 531, 448, 449, 0, 0, + 450, 451, 0, 452, 0, 454, 455, 456, 457, 458, + 0, 459, 460, 461, 0, 0, 462, 463, 464, 465, + 466, 0, 467, 468, 469, 470, 471, 472, 473, 474, + 0, 0, 475, 476, 477, 0, 478, 479, 480, 481, + 0, 482, 483, 484, 485, 486, 487, 488, 489, 0, + 490, 0, 492, 493, 494, 495, 496, 497, 498, 0, + 0, 499, 0, 0, 500, 501, 502, 503, 504, 505, + 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, + 516, 517, 518, 519, 520, 528, 0, 554, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 118, 119, 120, 121, 122, 123, + 124, 125, 0, 126, 127, 128, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 130, 131, 0, 132, 133, + 134, 0, 136, 137, 138, 139, 140, 0, 142, 143, + 0, 144, 145, 146, 147, 148, 149, 0, 0, 150, + 151, 152, 153, 154, 155, 156, 0, 157, 158, 159, + 160, 161, 0, 0, 0, 163, 164, 165, 166, 167, + 168, 0, 170, 171, 172, 0, 173, 174, 175, 176, + 177, 178, 0, 0, 180, 181, 182, 183, 184, 185, + 186, 187, 188, 189, 190, 191, 192, 193, 194, 0, + 195, 0, 196, 197, 198, 199, 200, 201, 0, 0, + 202, 203, 204, 205, 0, 0, 206, 207, 208, 209, + 210, 0, 211, 212, 213, 0, 214, 215, 216, 0, + 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, + 227, 228, 0, 229, 0, 230, 231, 232, 233, 0, + 234, 0, 235, 0, 0, 0, 238, 239, 529, 0, + 242, 0, 243, 0, 244, 245, 246, 247, 0, 248, + 249, 250, 251, 252, 902, 254, 0, 256, 257, 258, + 259, 0, 260, 261, 262, 263, 264, 265, 266, 0, + 267, 0, 269, 270, 271, 272, 273, 274, 275, 276, + 0, 277, 0, 278, 0, 0, 281, 0, 283, 284, + 285, 286, 287, 288, 0, 0, 289, 0, 291, 0, + 0, 293, 294, 295, 296, 297, 298, 299, 300, 530, + 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, + 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, + 322, 0, 324, 325, 326, 327, 328, 0, 329, 330, + 0, 332, 0, 333, 334, 335, 336, 337, 338, 0, + 339, 340, 0, 0, 341, 342, 343, 0, 0, 344, + 345, 346, 0, 348, 0, 350, 351, 352, 353, 354, + 355, 356, 357, 358, 359, 360, 361, 0, 0, 0, + 0, 362, 363, 364, 0, 366, 367, 368, 369, 370, + 371, 0, 372, 373, 374, 375, 376, 377, 0, 378, + 379, 380, 381, 382, 383, 384, 385, 386, 387, 0, + 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, + 398, 399, 400, 0, 401, 402, 0, 404, 405, 406, + 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, + 417, 418, 419, 420, 0, 0, 421, 422, 423, 424, + 425, 426, 427, 428, 429, 0, 0, 431, 432, 433, + 434, 0, 435, 436, 437, 438, 439, 440, 441, 442, + 443, 444, 445, 446, 531, 448, 449, 0, 0, 450, + 451, 0, 452, 0, 454, 455, 456, 457, 458, 0, + 459, 460, 461, 0, 0, 462, 463, 464, 465, 466, + 0, 467, 468, 469, 470, 471, 472, 473, 474, 0, + 0, 475, 476, 477, 0, 478, 479, 480, 481, 0, + 482, 483, 484, 485, 486, 487, 488, 489, 0, 490, + 0, 492, 493, 494, 495, 496, 497, 498, 0, 0, + 499, 0, 0, 500, 501, 502, 503, 504, 505, 506, + 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, + 517, 518, 519, 520, 528, 0, 554, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 118, 119, 120, 121, 122, 123, 124, + 125, 0, 126, 127, 128, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 130, 131, 0, 132, 133, 134, + 0, 136, 137, 138, 139, 140, 0, 142, 143, 0, + 144, 145, 146, 147, 148, 149, 0, 0, 150, 151, + 152, 153, 154, 155, 156, 0, 157, 158, 159, 160, + 161, 0, 0, 0, 163, 164, 165, 166, 167, 168, + 0, 170, 171, 172, 0, 173, 174, 175, 176, 177, + 178, 0, 0, 180, 181, 182, 183, 184, 185, 186, + 187, 188, 189, 190, 191, 192, 193, 194, 0, 195, + 0, 196, 197, 198, 199, 200, 201, 0, 0, 202, + 203, 204, 205, 0, 0, 206, 207, 208, 209, 210, + 0, 211, 212, 213, 0, 214, 215, 216, 0, 217, + 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, + 228, 0, 229, 0, 230, 231, 232, 233, 0, 234, + 0, 235, 0, 0, 0, 238, 239, 529, 0, 242, + 0, 243, 0, 244, 245, 246, 247, 0, 248, 249, + 250, 251, 252, 906, 254, 0, 256, 257, 258, 259, + 0, 260, 261, 262, 263, 264, 265, 266, 0, 267, + 0, 269, 270, 271, 272, 273, 274, 275, 276, 0, + 277, 0, 278, 0, 0, 281, 0, 283, 284, 285, + 286, 287, 288, 0, 0, 289, 0, 291, 0, 0, + 293, 294, 295, 296, 297, 298, 299, 300, 530, 302, + 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, + 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, + 0, 324, 325, 326, 327, 328, 0, 329, 330, 0, + 332, 0, 333, 334, 335, 336, 337, 338, 0, 339, + 340, 0, 0, 341, 342, 343, 0, 0, 344, 345, + 346, 0, 348, 0, 350, 351, 352, 353, 354, 355, + 356, 357, 358, 359, 360, 361, 0, 0, 0, 0, + 362, 363, 364, 0, 366, 367, 368, 369, 370, 371, + 0, 372, 373, 374, 375, 376, 377, 0, 378, 379, + 380, 381, 382, 383, 384, 385, 386, 387, 0, 388, + 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, + 399, 400, 0, 401, 402, 0, 404, 405, 406, 407, + 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, + 418, 419, 420, 0, 0, 421, 422, 423, 424, 425, + 426, 427, 428, 429, 0, 0, 431, 432, 433, 434, + 0, 435, 436, 437, 438, 439, 440, 441, 442, 443, + 444, 445, 446, 531, 448, 449, 0, 0, 450, 451, + 0, 452, 0, 454, 455, 456, 457, 458, 0, 459, + 460, 461, 0, 0, 462, 463, 464, 465, 466, 0, + 467, 468, 469, 470, 471, 472, 473, 474, 0, 0, + 475, 476, 477, 0, 478, 479, 480, 481, 0, 482, + 483, 484, 485, 486, 487, 488, 489, 0, 490, 0, + 492, 493, 494, 495, 496, 497, 498, 0, 0, 499, + 0, 0, 500, 501, 502, 503, 504, 505, 506, 507, + 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, + 518, 519, 520, 528, 0, 554, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 118, 119, 120, 121, 122, 123, 124, 125, + 0, 126, 127, 128, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 130, 131, 0, 132, 133, 134, 0, + 136, 137, 138, 139, 140, 0, 142, 143, 0, 144, + 145, 146, 147, 148, 149, 0, 0, 150, 151, 152, + 153, 154, 155, 156, 0, 157, 158, 159, 160, 161, + 0, 0, 0, 163, 164, 165, 166, 167, 168, 0, + 170, 171, 172, 0, 173, 174, 175, 176, 177, 178, + 0, 0, 180, 181, 182, 183, 184, 185, 186, 187, + 188, 189, 190, 191, 192, 193, 194, 0, 195, 0, + 196, 197, 198, 199, 200, 201, 0, 0, 202, 203, + 204, 205, 0, 0, 206, 207, 208, 209, 210, 0, + 211, 212, 213, 0, 214, 215, 216, 0, 217, 218, + 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, + 0, 229, 0, 230, 231, 232, 233, 0, 234, 0, + 235, 0, 0, 0, 238, 239, 529, 0, 242, 0, + 243, 0, 244, 245, 246, 247, 0, 248, 249, 250, + 251, 252, 936, 254, 0, 256, 257, 258, 259, 0, + 260, 261, 262, 263, 264, 265, 266, 0, 267, 0, + 269, 270, 271, 272, 273, 274, 275, 276, 0, 277, + 0, 278, 0, 0, 281, 0, 283, 284, 285, 286, + 287, 288, 0, 0, 289, 0, 291, 0, 0, 293, + 294, 295, 296, 297, 298, 299, 300, 530, 302, 303, + 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, + 314, 315, 316, 317, 318, 319, 320, 321, 322, 0, + 324, 325, 326, 327, 328, 0, 329, 330, 0, 332, + 0, 333, 334, 335, 336, 337, 338, 0, 339, 340, + 0, 0, 341, 342, 343, 0, 0, 344, 345, 346, + 0, 348, 0, 350, 351, 352, 353, 354, 355, 356, + 357, 358, 359, 360, 361, 0, 0, 0, 0, 362, + 363, 364, 0, 366, 367, 368, 369, 370, 371, 0, + 372, 373, 374, 375, 376, 377, 0, 378, 379, 380, + 381, 382, 383, 384, 385, 386, 387, 0, 388, 389, + 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, + 400, 0, 401, 402, 0, 404, 405, 406, 407, 408, + 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, + 419, 420, 0, 0, 421, 422, 423, 424, 425, 426, + 427, 428, 429, 0, 0, 431, 432, 433, 434, 0, + 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, + 445, 446, 531, 448, 449, 0, 0, 450, 451, 0, + 452, 0, 454, 455, 456, 457, 458, 0, 459, 460, + 461, 0, 0, 462, 463, 464, 465, 466, 0, 467, + 468, 469, 470, 471, 472, 473, 474, 0, 0, 475, + 476, 477, 0, 478, 479, 480, 481, 0, 482, 483, + 484, 485, 486, 487, 488, 489, 0, 490, 0, 492, + 493, 494, 495, 496, 497, 498, 0, 0, 499, 0, + 0, 500, 501, 502, 503, 504, 505, 506, 507, 508, + 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, + 519, 520, 528, 0, 554, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 118, 119, 120, 121, 122, 123, 124, 125, 0, + 126, 127, 128, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 130, 131, 0, 132, 133, 134, 0, 136, + 137, 138, 139, 140, 0, 142, 143, 0, 144, 145, + 146, 147, 148, 149, 0, 0, 150, 151, 152, 153, + 154, 155, 156, 0, 157, 158, 159, 160, 161, 0, + 0, 0, 163, 164, 165, 166, 167, 168, 0, 170, + 171, 172, 0, 173, 174, 175, 176, 177, 178, 0, + 0, 180, 181, 182, 183, 184, 185, 186, 187, 188, + 189, 190, 191, 192, 193, 194, 0, 195, 0, 196, + 197, 198, 199, 200, 201, 0, 0, 202, 203, 204, + 205, 0, 0, 206, 207, 208, 209, 210, 0, 211, + 212, 213, 0, 214, 215, 216, 0, 217, 218, 219, + 220, 221, 222, 223, 224, 225, 226, 227, 228, 0, + 229, 0, 230, 231, 232, 233, 0, 234, 0, 235, + 0, 0, 0, 238, 239, 529, 0, 242, 0, 243, + 0, 244, 245, 246, 247, 0, 248, 249, 250, 251, + 252, 964, 254, 0, 256, 257, 258, 259, 0, 260, + 261, 262, 263, 264, 265, 266, 0, 267, 0, 269, + 270, 271, 272, 273, 274, 275, 276, 0, 277, 0, + 278, 0, 0, 281, 0, 283, 284, 285, 286, 287, + 288, 0, 0, 289, 0, 291, 0, 0, 293, 294, + 295, 296, 297, 298, 299, 300, 530, 302, 303, 304, + 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, + 315, 316, 317, 318, 319, 320, 321, 322, 0, 324, + 325, 326, 327, 328, 0, 329, 330, 0, 332, 0, + 333, 334, 335, 336, 337, 338, 0, 339, 340, 0, + 0, 341, 342, 343, 0, 0, 344, 345, 346, 0, + 348, 0, 350, 351, 352, 353, 354, 355, 356, 357, + 358, 359, 360, 361, 0, 0, 0, 0, 362, 363, + 364, 0, 366, 367, 368, 369, 370, 371, 0, 372, + 373, 374, 375, 376, 377, 0, 378, 379, 380, 381, + 382, 383, 384, 385, 386, 387, 0, 388, 389, 390, + 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, + 0, 401, 402, 0, 404, 405, 406, 407, 408, 409, + 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, + 420, 0, 0, 421, 422, 423, 424, 425, 426, 427, + 428, 429, 0, 0, 431, 432, 433, 434, 0, 435, + 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, + 446, 531, 448, 449, 0, 0, 450, 451, 0, 452, + 0, 454, 455, 456, 457, 458, 0, 459, 460, 461, + 0, 0, 462, 463, 464, 465, 466, 0, 467, 468, + 469, 470, 471, 472, 473, 474, 0, 0, 475, 476, + 477, 0, 478, 479, 480, 481, 0, 482, 483, 484, + 485, 486, 487, 488, 489, 0, 490, 0, 492, 493, + 494, 495, 496, 497, 498, 0, 0, 499, 0, 0, + 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, + 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, + 520, 528, 0, 554, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 118, 119, 120, 121, 122, 123, 124, 125, 0, 126, + 127, 128, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 130, 131, 0, 132, 133, 134, 0, 136, 137, + 138, 139, 140, 0, 142, 143, 0, 144, 145, 146, + 147, 148, 149, 0, 0, 150, 151, 152, 153, 154, + 155, 156, 0, 157, 158, 159, 160, 161, 0, 0, + 0, 163, 164, 165, 166, 167, 168, 0, 170, 171, + 172, 0, 173, 174, 175, 176, 177, 178, 0, 0, + 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, + 190, 191, 192, 193, 194, 0, 195, 0, 196, 197, + 198, 199, 200, 201, 0, 0, 202, 203, 204, 205, + 0, 0, 206, 207, 208, 209, 210, 0, 211, 212, + 213, 0, 214, 215, 216, 0, 217, 218, 219, 220, + 221, 222, 223, 224, 225, 226, 227, 228, 0, 229, + 0, 230, 231, 232, 233, 0, 234, 0, 235, 0, + 0, 0, 238, 239, 529, 0, 242, 0, 243, 0, + 244, 245, 246, 247, 0, 248, 249, 250, 251, 252, + 967, 254, 0, 256, 257, 258, 259, 0, 260, 261, + 262, 263, 264, 265, 266, 0, 267, 0, 269, 270, + 271, 272, 273, 274, 275, 276, 0, 277, 0, 278, + 0, 0, 281, 0, 283, 284, 285, 286, 287, 288, + 0, 0, 289, 0, 291, 0, 0, 293, 294, 295, + 296, 297, 298, 299, 300, 530, 302, 303, 304, 305, + 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, + 316, 317, 318, 319, 320, 321, 322, 0, 324, 325, + 326, 327, 328, 0, 329, 330, 0, 332, 0, 333, + 334, 335, 336, 337, 338, 0, 339, 340, 0, 0, + 341, 342, 343, 0, 0, 344, 345, 346, 0, 348, + 0, 350, 351, 352, 353, 354, 355, 356, 357, 358, + 359, 360, 361, 0, 0, 0, 0, 362, 363, 364, + 0, 366, 367, 368, 369, 370, 371, 0, 372, 373, + 374, 375, 376, 377, 0, 378, 379, 380, 381, 382, + 383, 384, 385, 386, 387, 0, 388, 389, 390, 391, + 392, 393, 394, 395, 396, 397, 398, 399, 400, 0, + 401, 402, 0, 404, 405, 406, 407, 408, 409, 410, + 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, + 0, 0, 421, 422, 423, 424, 425, 426, 427, 428, + 429, 0, 0, 431, 432, 433, 434, 0, 435, 436, + 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, + 531, 448, 449, 0, 0, 450, 451, 0, 452, 0, + 454, 455, 456, 457, 458, 0, 459, 460, 461, 0, + 0, 462, 463, 464, 465, 466, 0, 467, 468, 469, + 470, 471, 472, 473, 474, 0, 0, 475, 476, 477, + 0, 478, 479, 480, 481, 0, 482, 483, 484, 485, + 486, 487, 488, 489, 0, 490, 0, 492, 493, 494, + 495, 496, 497, 498, 0, 0, 499, 0, 0, 500, + 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, + 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, + 528, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 118, + 119, 120, 121, 122, 123, 124, 125, 0, 126, 127, + 128, 0, 0, 0, 0, 0, 0, 1010, 0, 0, + 130, 131, 0, 132, 133, 134, 0, 136, 137, 138, + 139, 140, 0, 142, 143, 0, 144, 145, 146, 147, + 148, 149, 0, 0, 150, 151, 152, 153, 154, 155, + 156, 0, 157, 158, 159, 160, 161, 0, 0, 0, + 163, 164, 165, 166, 167, 168, 0, 170, 171, 172, + 0, 173, 174, 175, 176, 177, 178, 0, 0, 180, + 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, + 191, 192, 193, 194, 0, 195, 0, 196, 197, 198, + 199, 200, 201, 0, 0, 202, 203, 204, 205, 0, + 0, 206, 207, 208, 209, 210, 0, 211, 212, 213, + 0, 214, 215, 216, 0, 217, 218, 219, 220, 221, + 222, 223, 224, 225, 226, 227, 228, 0, 229, 0, + 230, 231, 232, 233, 0, 234, 0, 235, 0, 0, + 0, 238, 239, 529, 0, 242, 0, 243, 0, 244, + 245, 246, 247, 0, 248, 249, 250, 251, 252, 253, + 254, 0, 256, 257, 258, 259, 0, 260, 261, 262, + 263, 264, 265, 266, 0, 267, 0, 269, 270, 271, + 272, 273, 274, 275, 276, 0, 277, 0, 278, 0, + 0, 281, 0, 283, 284, 285, 286, 287, 288, 0, + 0, 289, 0, 291, 0, 0, 293, 294, 295, 296, + 297, 298, 299, 300, 530, 302, 303, 304, 305, 306, + 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, + 317, 318, 319, 320, 321, 322, 0, 324, 325, 326, + 327, 328, 0, 329, 330, 0, 332, 0, 333, 334, + 335, 336, 337, 338, 0, 339, 340, 0, 0, 341, + 342, 343, 0, 0, 344, 345, 346, 0, 348, 0, + 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, + 360, 361, 0, 0, 0, 0, 362, 363, 364, 0, + 366, 367, 368, 369, 370, 371, 0, 372, 373, 374, + 375, 376, 377, 0, 378, 379, 380, 381, 382, 383, + 384, 385, 386, 387, 0, 388, 389, 390, 391, 392, + 393, 394, 395, 396, 397, 398, 399, 400, 0, 401, + 402, 0, 404, 405, 406, 407, 408, 409, 410, 411, + 412, 413, 414, 415, 416, 417, 418, 419, 420, 0, + 0, 421, 422, 423, 424, 425, 426, 427, 428, 429, + 0, 0, 431, 432, 433, 434, 0, 435, 436, 437, + 438, 439, 440, 441, 442, 443, 444, 445, 446, 531, + 448, 449, 0, 0, 450, 451, 0, 452, 0, 454, + 455, 456, 457, 458, 0, 459, 460, 461, 0, 0, + 462, 463, 464, 465, 466, 0, 467, 468, 469, 470, + 471, 472, 473, 474, 0, 0, 475, 476, 477, 0, + 478, 479, 480, 481, 0, 482, 483, 484, 485, 486, + 487, 488, 489, 0, 490, 0, 492, 493, 494, 495, + 496, 497, 498, 0, 0, 499, 0, 0, 500, 501, + 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, + 512, 513, 514, 515, 516, 517, 518, 519, 520, 528, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 118, 119, + 120, 121, 122, 123, 124, 125, 0, 126, 127, 128, + 0, 0, 0, 0, 0, 0, 1037, 0, 0, 130, + 131, 0, 132, 133, 134, 0, 136, 137, 138, 139, + 140, 0, 142, 143, 0, 144, 145, 146, 147, 148, + 149, 0, 0, 150, 151, 152, 153, 154, 155, 156, + 0, 157, 158, 159, 160, 161, 0, 0, 0, 163, + 164, 165, 166, 167, 168, 0, 170, 171, 172, 0, + 173, 174, 175, 176, 177, 178, 0, 0, 180, 181, + 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, + 192, 193, 194, 0, 195, 0, 196, 197, 198, 199, + 200, 201, 0, 0, 202, 203, 204, 205, 0, 0, + 206, 207, 208, 209, 210, 0, 211, 212, 213, 0, + 214, 215, 216, 0, 217, 218, 219, 220, 221, 222, + 223, 224, 225, 226, 227, 228, 0, 229, 0, 230, + 231, 232, 233, 0, 234, 0, 235, 0, 0, 0, + 238, 239, 529, 0, 242, 0, 243, 0, 244, 245, + 246, 247, 0, 248, 249, 250, 251, 252, 253, 254, + 0, 256, 257, 258, 259, 0, 260, 261, 262, 263, + 264, 265, 266, 0, 267, 0, 269, 270, 271, 272, + 273, 274, 275, 276, 0, 277, 0, 278, 0, 0, + 281, 0, 283, 284, 285, 286, 287, 288, 0, 0, + 289, 0, 291, 0, 0, 293, 294, 295, 296, 297, + 298, 299, 300, 530, 302, 303, 304, 305, 306, 307, + 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, + 318, 319, 320, 321, 322, 0, 324, 325, 326, 327, + 328, 0, 329, 330, 0, 332, 0, 333, 334, 335, + 336, 337, 338, 0, 339, 340, 0, 0, 341, 342, + 343, 0, 0, 344, 345, 346, 0, 348, 0, 350, + 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, + 361, 0, 0, 0, 0, 362, 363, 364, 0, 366, + 367, 368, 369, 370, 371, 0, 372, 373, 374, 375, + 376, 377, 0, 378, 379, 380, 381, 382, 383, 384, + 385, 386, 387, 0, 388, 389, 390, 391, 392, 393, + 394, 395, 396, 397, 398, 399, 400, 0, 401, 402, + 0, 404, 405, 406, 407, 408, 409, 410, 411, 412, + 413, 414, 415, 416, 417, 418, 419, 420, 0, 0, + 421, 422, 423, 424, 425, 426, 427, 428, 429, 0, + 0, 431, 432, 433, 434, 0, 435, 436, 437, 438, + 439, 440, 441, 442, 443, 444, 445, 446, 531, 448, + 449, 0, 0, 450, 451, 0, 452, 0, 454, 455, + 456, 457, 458, 0, 459, 460, 461, 0, 0, 462, + 463, 464, 465, 466, 0, 467, 468, 469, 470, 471, + 472, 473, 474, 0, 0, 475, 476, 477, 0, 478, + 479, 480, 481, 0, 482, 483, 484, 485, 486, 487, + 488, 489, 0, 490, 0, 492, 493, 494, 495, 496, + 497, 498, 0, 0, 499, 0, 0, 500, 501, 502, + 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, + 513, 514, 515, 516, 517, 518, 519, 520, 528, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 118, 119, 120, + 121, 122, 123, 124, 125, 827, 126, 127, 128, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 130, 131, + 0, 132, 133, 134, 0, 136, 137, 138, 139, 140, + 0, 142, 143, 0, 144, 145, 146, 147, 148, 149, + 0, 0, 150, 151, 152, 153, 154, 155, 156, 0, + 157, 158, 159, 160, 161, 0, 0, 0, 163, 164, + 165, 166, 167, 168, 0, 170, 171, 172, 0, 173, + 174, 175, 176, 177, 178, 0, 0, 180, 181, 182, + 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, + 193, 194, 0, 195, 0, 196, 197, 198, 199, 200, + 201, 0, 0, 202, 203, 204, 205, 0, 0, 206, + 207, 208, 209, 210, 0, 211, 212, 213, 0, 214, + 215, 216, 0, 217, 218, 219, 220, 221, 222, 223, + 224, 225, 226, 227, 228, 0, 229, 0, 230, 231, + 232, 233, 0, 234, 0, 235, 0, 0, 0, 238, + 239, 529, 0, 242, 0, 243, 0, 244, 245, 246, + 247, 0, 248, 249, 250, 251, 252, 253, 254, 0, + 256, 257, 258, 259, 0, 260, 261, 262, 263, 264, + 265, 266, 0, 267, 0, 269, 270, 271, 272, 273, + 274, 275, 276, 0, 277, 0, 278, 0, 0, 281, + 0, 283, 284, 285, 286, 287, 288, 0, 0, 289, + 0, 291, 0, 0, 293, 294, 295, 296, 297, 298, + 299, 300, 530, 302, 303, 304, 305, 306, 307, 308, + 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, + 319, 320, 321, 322, 0, 324, 325, 326, 327, 328, + 0, 329, 330, 0, 332, 0, 333, 334, 335, 336, + 337, 338, 0, 339, 340, 0, 0, 341, 342, 343, + 0, 0, 344, 345, 346, 0, 348, 0, 350, 351, + 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, + 0, 0, 0, 0, 362, 363, 364, 0, 366, 367, + 368, 369, 370, 371, 0, 372, 373, 374, 375, 376, + 377, 0, 378, 379, 380, 381, 382, 383, 384, 385, + 386, 387, 0, 388, 389, 390, 391, 392, 393, 394, + 395, 396, 397, 398, 399, 400, 0, 401, 402, 0, + 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, + 414, 415, 416, 417, 418, 419, 420, 0, 0, 421, + 422, 423, 424, 425, 426, 427, 428, 429, 0, 0, + 431, 432, 433, 434, 0, 435, 436, 437, 438, 439, + 440, 441, 442, 443, 444, 445, 446, 531, 448, 449, + 0, 0, 450, 451, 0, 452, 0, 454, 455, 456, + 457, 458, 0, 459, 831, 461, 0, 0, 832, 463, + 464, 465, 466, 0, 467, 468, 469, 470, 471, 472, + 473, 474, 0, 0, 475, 476, 477, 0, 478, 479, + 480, 481, 0, 482, 483, 484, 485, 486, 487, 488, + 489, 0, 490, 0, 492, 493, 494, 495, 496, 497, + 498, 0, 0, 499, 0, 0, 500, 501, 502, 503, + 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, + 514, 515, 516, 517, 518, 519, 520, 528, 0, 554, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 118, 119, 120, 121, + 122, 123, 124, 125, 0, 126, 127, 128, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 130, 131, 0, + 132, 133, 134, 0, 136, 137, 138, 139, 140, 0, + 142, 143, 0, 144, 145, 146, 147, 148, 149, 0, + 0, 150, 151, 152, 153, 154, 155, 156, 0, 157, + 158, 159, 160, 161, 0, 0, 0, 163, 164, 165, + 166, 167, 168, 0, 170, 171, 172, 0, 173, 174, + 175, 176, 177, 178, 0, 0, 180, 181, 182, 183, + 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, + 194, 0, 195, 0, 196, 197, 198, 199, 200, 201, + 0, 0, 202, 203, 204, 205, 0, 0, 206, 207, + 208, 209, 210, 0, 211, 212, 213, 0, 214, 215, + 216, 0, 217, 218, 219, 220, 221, 222, 223, 224, + 225, 226, 227, 228, 0, 229, 0, 230, 231, 232, + 233, 0, 234, 0, 235, 0, 0, 0, 238, 239, + 529, 0, 242, 0, 243, 0, 244, 245, 246, 247, + 0, 248, 249, 250, 251, 252, 1326, 254, 0, 256, + 257, 258, 259, 0, 260, 261, 262, 263, 264, 265, + 266, 0, 267, 0, 269, 270, 271, 272, 273, 274, + 275, 276, 0, 277, 0, 278, 0, 0, 281, 0, + 283, 284, 285, 286, 287, 288, 0, 0, 289, 0, + 291, 0, 0, 293, 294, 295, 296, 297, 298, 299, + 300, 530, 302, 303, 304, 305, 306, 307, 308, 309, + 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, + 320, 321, 322, 0, 324, 325, 326, 327, 328, 0, + 329, 330, 0, 332, 0, 333, 334, 335, 336, 337, + 338, 0, 339, 340, 0, 0, 341, 342, 343, 0, + 0, 344, 345, 346, 0, 348, 0, 350, 351, 352, + 353, 354, 355, 356, 357, 358, 359, 360, 361, 0, + 0, 0, 0, 362, 363, 364, 0, 366, 367, 368, + 369, 370, 371, 0, 372, 373, 374, 375, 376, 377, + 0, 378, 379, 380, 381, 382, 383, 384, 385, 386, + 387, 0, 388, 389, 390, 391, 392, 393, 394, 395, + 396, 397, 398, 399, 400, 0, 401, 402, 0, 404, + 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, + 415, 416, 417, 418, 419, 420, 0, 0, 421, 422, + 423, 424, 425, 426, 427, 428, 429, 0, 0, 431, + 432, 433, 434, 0, 435, 436, 437, 438, 439, 440, + 441, 442, 443, 444, 445, 446, 531, 448, 449, 0, + 0, 450, 451, 0, 452, 0, 454, 455, 456, 457, + 458, 0, 459, 460, 461, 0, 0, 462, 463, 464, + 465, 466, 0, 467, 468, 469, 470, 471, 472, 473, + 474, 0, 0, 475, 476, 477, 0, 478, 479, 480, + 481, 0, 482, 483, 484, 485, 486, 487, 488, 489, + 0, 490, 0, 492, 493, 494, 495, 496, 497, 498, + 0, 0, 499, 0, 0, 500, 501, 502, 503, 504, + 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, + 515, 516, 517, 518, 519, 520, 528, 0, 554, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 118, 119, 120, 121, 122, + 123, 124, 125, 0, 126, 127, 128, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 130, 131, 0, 132, + 133, 134, 0, 136, 137, 138, 139, 140, 0, 142, + 143, 0, 144, 145, 146, 147, 148, 149, 0, 0, + 150, 151, 152, 153, 154, 155, 156, 0, 157, 158, + 159, 160, 161, 0, 0, 0, 163, 164, 165, 166, + 167, 168, 0, 170, 171, 172, 0, 173, 174, 175, + 176, 177, 178, 0, 0, 180, 181, 182, 183, 184, + 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, + 0, 195, 0, 196, 197, 198, 199, 200, 201, 0, + 0, 202, 203, 204, 205, 0, 0, 206, 207, 208, + 209, 210, 0, 211, 212, 213, 0, 214, 215, 216, + 0, 217, 218, 219, 220, 221, 222, 223, 224, 225, + 226, 227, 228, 0, 229, 0, 230, 231, 232, 233, + 0, 234, 0, 235, 0, 0, 0, 238, 239, 529, + 0, 242, 0, 243, 0, 244, 245, 246, 247, 0, + 248, 249, 250, 251, 252, 1328, 254, 0, 256, 257, + 258, 259, 0, 260, 261, 262, 263, 264, 265, 266, + 0, 267, 0, 269, 270, 271, 272, 273, 274, 275, + 276, 0, 277, 0, 278, 0, 0, 281, 0, 283, + 284, 285, 286, 287, 288, 0, 0, 289, 0, 291, + 0, 0, 293, 294, 295, 296, 297, 298, 299, 300, + 530, 302, 303, 304, 305, 306, 307, 308, 309, 310, + 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, + 321, 322, 0, 324, 325, 326, 327, 328, 0, 329, + 330, 0, 332, 0, 333, 334, 335, 336, 337, 338, + 0, 339, 340, 0, 0, 341, 342, 343, 0, 0, + 344, 345, 346, 0, 348, 0, 350, 351, 352, 353, + 354, 355, 356, 357, 358, 359, 360, 361, 0, 0, + 0, 0, 362, 363, 364, 0, 366, 367, 368, 369, + 370, 371, 0, 372, 373, 374, 375, 376, 377, 0, + 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, + 0, 388, 389, 390, 391, 392, 393, 394, 395, 396, + 397, 398, 399, 400, 0, 401, 402, 0, 404, 405, + 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, + 416, 417, 418, 419, 420, 0, 0, 421, 422, 423, + 424, 425, 426, 427, 428, 429, 0, 0, 431, 432, + 433, 434, 0, 435, 436, 437, 438, 439, 440, 441, + 442, 443, 444, 445, 446, 531, 448, 449, 0, 0, + 450, 451, 0, 452, 0, 454, 455, 456, 457, 458, + 0, 459, 460, 461, 0, 0, 462, 463, 464, 465, + 466, 0, 467, 468, 469, 470, 471, 472, 473, 474, + 0, 0, 475, 476, 477, 0, 478, 479, 480, 481, + 0, 482, 483, 484, 485, 486, 487, 488, 489, 0, + 490, 0, 492, 493, 494, 495, 496, 497, 498, 0, + 0, 499, 0, 0, 500, 501, 502, 503, 504, 505, + 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, + 516, 517, 518, 519, 520, 528, 0, 554, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 118, 119, 120, 121, 122, 123, + 124, 125, 0, 126, 127, 128, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 130, 131, 0, 132, 133, + 134, 0, 136, 137, 138, 139, 140, 0, 142, 143, + 0, 144, 145, 146, 147, 148, 149, 0, 0, 150, + 151, 152, 153, 154, 155, 156, 0, 157, 158, 159, + 160, 161, 0, 0, 0, 163, 164, 165, 166, 167, + 168, 0, 170, 171, 172, 0, 173, 174, 175, 176, + 177, 178, 0, 0, 180, 181, 182, 183, 184, 185, + 186, 187, 188, 189, 190, 191, 192, 193, 194, 0, + 195, 0, 196, 197, 198, 199, 200, 201, 0, 0, + 202, 203, 204, 205, 0, 0, 206, 207, 208, 209, + 210, 0, 211, 212, 213, 0, 214, 215, 216, 0, + 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, + 227, 228, 0, 229, 0, 230, 231, 232, 233, 0, + 234, 0, 235, 0, 0, 0, 238, 239, 529, 0, + 242, 0, 243, 0, 244, 245, 246, 247, 0, 248, + 249, 250, 251, 252, 1331, 254, 0, 256, 257, 258, + 259, 0, 260, 261, 262, 263, 264, 265, 266, 0, + 267, 0, 269, 270, 271, 272, 273, 274, 275, 276, + 0, 277, 0, 278, 0, 0, 281, 0, 283, 284, + 285, 286, 287, 288, 0, 0, 289, 0, 291, 0, + 0, 293, 294, 295, 296, 297, 298, 299, 300, 530, + 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, + 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, + 322, 0, 324, 325, 326, 327, 328, 0, 329, 330, + 0, 332, 0, 333, 334, 335, 336, 337, 338, 0, + 339, 340, 0, 0, 341, 342, 343, 0, 0, 344, + 345, 346, 0, 348, 0, 350, 351, 352, 353, 354, + 355, 356, 357, 358, 359, 360, 361, 0, 0, 0, + 0, 362, 363, 364, 0, 366, 367, 368, 369, 370, + 371, 0, 372, 373, 374, 375, 376, 377, 0, 378, + 379, 380, 381, 382, 383, 384, 385, 386, 387, 0, + 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, + 398, 399, 400, 0, 401, 402, 0, 404, 405, 406, + 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, + 417, 418, 419, 420, 0, 0, 421, 422, 423, 424, + 425, 426, 427, 428, 429, 0, 0, 431, 432, 433, + 434, 0, 435, 436, 437, 438, 439, 440, 441, 442, + 443, 444, 445, 446, 531, 448, 449, 0, 0, 450, + 451, 0, 452, 0, 454, 455, 456, 457, 458, 0, + 459, 460, 461, 0, 0, 462, 463, 464, 465, 466, + 0, 467, 468, 469, 470, 471, 472, 473, 474, 0, + 0, 475, 476, 477, 0, 478, 479, 480, 481, 0, + 482, 483, 484, 485, 486, 487, 488, 489, 0, 490, + 0, 492, 493, 494, 495, 496, 497, 498, 0, 0, + 499, 0, 0, 500, 501, 502, 503, 504, 505, 506, + 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, + 517, 518, 519, 520, 528, 0, 554, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 118, 119, 120, 121, 122, 123, 124, + 125, 0, 126, 127, 128, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 130, 131, 0, 132, 133, 134, + 0, 136, 137, 138, 139, 140, 0, 142, 143, 0, + 144, 145, 146, 147, 148, 149, 0, 0, 150, 151, + 152, 153, 154, 155, 156, 0, 157, 158, 159, 160, + 161, 0, 0, 0, 163, 164, 165, 166, 167, 168, + 0, 170, 171, 172, 0, 173, 174, 175, 176, 177, + 178, 0, 0, 180, 181, 182, 183, 184, 185, 186, + 187, 188, 189, 190, 191, 192, 193, 194, 0, 195, + 0, 196, 197, 198, 199, 200, 201, 0, 0, 202, + 203, 204, 205, 0, 0, 206, 207, 208, 209, 210, + 0, 211, 212, 213, 0, 214, 215, 216, 0, 217, + 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, + 228, 0, 229, 0, 230, 231, 232, 233, 0, 234, + 0, 235, 0, 0, 0, 238, 239, 529, 0, 242, + 0, 243, 0, 244, 245, 246, 247, 0, 248, 249, + 250, 251, 252, 1333, 254, 0, 256, 257, 258, 259, + 0, 260, 261, 262, 263, 264, 265, 266, 0, 267, + 0, 269, 270, 271, 272, 273, 274, 275, 276, 0, + 277, 0, 278, 0, 0, 281, 0, 283, 284, 285, + 286, 287, 288, 0, 0, 289, 0, 291, 0, 0, + 293, 294, 295, 296, 297, 298, 299, 300, 530, 302, + 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, + 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, + 0, 324, 325, 326, 327, 328, 0, 329, 330, 0, + 332, 0, 333, 334, 335, 336, 337, 338, 0, 339, + 340, 0, 0, 341, 342, 343, 0, 0, 344, 345, + 346, 0, 348, 0, 350, 351, 352, 353, 354, 355, + 356, 357, 358, 359, 360, 361, 0, 0, 0, 0, + 362, 363, 364, 0, 366, 367, 368, 369, 370, 371, + 0, 372, 373, 374, 375, 376, 377, 0, 378, 379, + 380, 381, 382, 383, 384, 385, 386, 387, 0, 388, + 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, + 399, 400, 0, 401, 402, 0, 404, 405, 406, 407, + 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, + 418, 419, 420, 0, 0, 421, 422, 423, 424, 425, + 426, 427, 428, 429, 0, 0, 431, 432, 433, 434, + 0, 435, 436, 437, 438, 439, 440, 441, 442, 443, + 444, 445, 446, 531, 448, 449, 0, 0, 450, 451, + 0, 452, 0, 454, 455, 456, 457, 458, 0, 459, + 460, 461, 0, 0, 462, 463, 464, 465, 466, 0, + 467, 468, 469, 470, 471, 472, 473, 474, 0, 0, + 475, 476, 477, 0, 478, 479, 480, 481, 0, 482, + 483, 484, 485, 486, 487, 488, 489, 0, 490, 0, + 492, 493, 494, 495, 496, 497, 498, 0, 0, 499, + 0, 0, 500, 501, 502, 503, 504, 505, 506, 507, + 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, + 518, 519, 520, 528, 0, 554, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 118, 119, 120, 121, 122, 123, 124, 125, + 0, 126, 127, 128, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 130, 131, 0, 132, 133, 134, 0, + 136, 137, 138, 139, 140, 0, 142, 143, 0, 144, + 145, 146, 147, 148, 149, 0, 0, 150, 151, 152, + 153, 154, 155, 156, 0, 157, 158, 159, 160, 161, + 0, 0, 0, 163, 164, 165, 166, 167, 168, 0, + 170, 171, 172, 0, 173, 174, 175, 176, 177, 178, + 0, 0, 180, 181, 182, 183, 184, 185, 186, 187, + 188, 189, 190, 191, 192, 193, 194, 0, 195, 0, + 196, 197, 198, 199, 200, 201, 0, 0, 202, 203, + 204, 205, 0, 0, 206, 207, 208, 209, 210, 0, + 211, 212, 213, 0, 214, 215, 216, 0, 217, 218, + 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, + 0, 229, 0, 230, 231, 232, 233, 0, 234, 0, + 235, 0, 0, 0, 238, 239, 529, 0, 242, 0, + 243, 0, 244, 245, 246, 247, 0, 248, 249, 250, + 251, 252, 2280, 254, 0, 256, 257, 258, 259, 0, + 260, 261, 262, 263, 264, 265, 266, 0, 267, 0, + 269, 270, 271, 272, 273, 274, 275, 276, 0, 277, + 0, 278, 0, 0, 281, 0, 283, 284, 285, 286, + 287, 288, 0, 0, 289, 0, 291, 0, 0, 293, + 294, 295, 296, 297, 298, 299, 300, 530, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, - 314, -1, -1, -1, -1, 319, 320, 321, 322, 323, - 324, 325, 326, 327, 328, -1, 330, 331, 332, 333, - 334, 335, -1, 337, 338, 339, 340, 341, 342, 343, - 344, 345, 346, -1, 348, 349, 350, 351, 352, 353, - 354, 355, 356, 357, 358, 359, 360, -1, 362, 363, - 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, - 374, 375, 376, 377, 378, 379, 380, 381, -1, -1, - 384, 385, 386, 387, 388, 389, 390, 391, 392, -1, - 394, 395, 396, 397, 398, -1, 400, 401, 402, 403, - 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, - 414, -1, -1, 417, 418, -1, 420, 421, 422, 423, - 424, 425, 426, -1, 428, 429, 430, -1, -1, 433, - 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, - 444, 445, 446, -1, -1, 449, 450, 451, -1, 453, - 454, 455, 456, -1, 458, 459, 460, 461, 462, 463, - 464, 465, -1, 467, 468, 469, 470, 471, 472, 473, - 474, 475, -1, -1, 478, -1, -1, 481, 482, 483, - 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, - 494, 495, 496, 497, 498, 499, 500, 501, -1, -1, - -1, -1, -1, -1, -1, 509, 510, -1, -1, -1, - -1, -1, 516, -1, 518, -1, -1, -1, -1, -1, - 524, 525, 526, 527, 3, 4, 5, 6, 7, 8, - 9, 10, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 22, 23, 24, 25, 26, 27, 28, - 29, -1, 31, 32, 33, -1, -1, -1, -1, -1, - 39, -1, -1, 42, 43, 44, -1, 46, 47, 48, - 49, 50, 51, 52, 53, 54, 55, 56, 57, -1, - 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, - 69, 70, 71, 72, 73, -1, 75, 76, 77, 78, - 79, -1, 81, -1, 83, 84, 85, 86, 87, 88, - 89, 90, 91, 92, -1, 94, 95, 96, 97, 98, - 99, -1, 101, 102, 103, 104, 105, 106, 107, 108, - 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, - -1, 120, 121, 122, 123, 124, 125, -1, -1, 128, - 129, 130, 131, -1, -1, 134, 135, 136, 137, 138, - -1, 140, 141, 142, -1, 144, 145, 146, -1, 148, - 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, - 159, 160, 161, -1, 163, 164, 165, 166, -1, 168, - -1, 170, 171, -1, 173, 174, 175, 176, 177, 178, - -1, 180, -1, 182, 183, 184, 185, -1, 187, 188, - 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, - -1, 200, 201, 202, 203, 204, 205, 206, -1, 208, - 209, 210, 211, 212, 213, 214, 215, 216, 217, -1, - 219, -1, 221, -1, -1, 224, 225, 226, 227, 228, - 229, 230, 231, -1, -1, 234, 235, 236, 237, -1, - 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, - 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, - 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, - 269, 270, 271, 272, 273, 274, -1, 276, 277, -1, - 279, 280, 281, 282, 283, 284, 285, 286, -1, 288, - 289, -1, -1, 292, 293, 294, -1, -1, 297, 298, - 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, - 309, 310, 311, 312, 313, 314, -1, -1, -1, -1, - 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, - -1, 330, 331, 332, 333, 334, 335, -1, 337, 338, - 339, 340, 341, 342, 343, 344, 345, 346, -1, 348, - 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, - 359, 360, -1, 362, 363, 364, 365, 366, 367, 368, - 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, - 379, 380, 381, -1, -1, 384, 385, 386, 387, 388, - 389, 390, 391, 392, -1, 394, 395, 396, 397, 398, - -1, 400, 401, 402, 403, 404, 405, 406, 407, 408, - 409, 410, 411, 412, 413, 414, -1, -1, 417, 418, - -1, 420, 421, 422, 423, 424, 425, 426, -1, 428, - 429, 430, -1, -1, 433, 434, 435, 436, 437, 438, - 439, 440, 441, 442, 443, 444, 445, 446, -1, -1, - 449, 450, 451, -1, 453, 454, 455, 456, -1, 458, - 459, 460, 461, 462, 463, 464, 465, -1, 467, 468, - 469, 470, 471, 472, 473, 474, 475, -1, -1, 478, - -1, -1, 481, 482, 483, 484, 485, 486, 487, 488, - 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, - 499, 500, 501, 502, -1, -1, -1, -1, -1, -1, - 509, 510, 511, -1, -1, -1, -1, 516, -1, 518, - -1, -1, -1, -1, -1, 524, 525, 526, 527, 3, - 4, 5, 6, 7, -1, 9, 10, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 22, 23, - 24, 25, 26, 27, 28, 29, -1, 31, 32, 33, - -1, -1, -1, -1, -1, 39, -1, -1, 42, 43, - 44, -1, 46, 47, 48, 49, 50, 51, 52, 53, - 54, 55, 56, 57, -1, 59, 60, 61, 62, 63, - 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, - -1, 75, 76, 77, 78, 79, -1, 81, -1, 83, - 84, 85, 86, 87, 88, 89, 90, 91, 92, -1, - 94, 95, 96, 97, 98, 99, -1, 101, 102, 103, - 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, - 114, 115, 116, -1, 118, -1, 120, 121, 122, 123, - 124, 125, -1, -1, 128, 129, 130, 131, -1, -1, - 134, 135, 136, 137, 138, -1, 140, 141, 142, -1, - 144, 145, 146, -1, 148, 149, 150, 151, 152, 153, - 154, 155, 156, 157, 158, 159, 160, 161, -1, 163, - 164, 165, 166, -1, 168, -1, 170, 171, -1, 173, - 174, 175, 176, 177, 178, -1, 180, -1, 182, 183, - 184, 185, -1, 187, 188, 189, 190, 191, 192, 193, - 194, 195, 196, 197, 198, -1, 200, 201, 202, 203, - 204, 205, 206, -1, 208, 209, 210, 211, 212, 213, - 214, 215, 216, 217, -1, 219, -1, 221, 222, 223, - 224, 225, 226, 227, 228, 229, 230, 231, -1, -1, - 234, 235, 236, 237, -1, 239, 240, 241, 242, 243, - 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, - 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, - 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, - 274, -1, 276, 277, 278, 279, 280, 281, 282, 283, - 284, 285, 286, -1, 288, 289, -1, -1, 292, 293, - 294, -1, -1, 297, 298, 299, 300, 301, 302, 303, + 314, 315, 316, 317, 318, 319, 320, 321, 322, 0, + 324, 325, 326, 327, 328, 0, 329, 330, 0, 332, + 0, 333, 334, 335, 336, 337, 338, 0, 339, 340, + 0, 0, 341, 342, 343, 0, 0, 344, 345, 346, + 0, 348, 0, 350, 351, 352, 353, 354, 355, 356, + 357, 358, 359, 360, 361, 0, 0, 0, 0, 362, + 363, 364, 0, 366, 367, 368, 369, 370, 371, 0, + 372, 373, 374, 375, 376, 377, 0, 378, 379, 380, + 381, 382, 383, 384, 385, 386, 387, 0, 388, 389, + 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, + 400, 0, 401, 402, 0, 404, 405, 406, 407, 408, + 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, + 419, 420, 0, 0, 421, 422, 423, 424, 425, 426, + 427, 428, 429, 0, 0, 431, 432, 433, 434, 0, + 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, + 445, 446, 531, 448, 449, 0, 0, 450, 451, 0, + 452, 0, 454, 455, 456, 457, 458, 0, 459, 460, + 461, 0, 0, 462, 463, 464, 465, 466, 0, 467, + 468, 469, 470, 471, 472, 473, 474, 0, 0, 475, + 476, 477, 0, 478, 479, 480, 481, 0, 482, 483, + 484, 485, 486, 487, 488, 489, 0, 490, 0, 492, + 493, 494, 495, 496, 497, 498, 0, 0, 499, 0, + 0, 500, 501, 502, 503, 504, 505, 506, 507, 508, + 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, + 519, 520, 1502, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 118, 119, 120, 121, 122, 123, 124, 125, 0, + 126, 127, 128, 0, 0, 0, 1503, 0, 0, -808, + 0, 1504, 130, 131, 0, 132, 133, 134, 1505, 136, + 137, 138, 0, 1506, 1507, 1508, 1509, 0, 144, 145, + 146, 147, 148, 149, 0, 0, 150, 151, 152, 153, + 1510, 1511, 156, 0, 157, 158, 159, 160, 0, 0, + 1512, 0, 1513, 164, 165, 166, 167, 168, 1514, 170, + 171, 172, 0, 173, 174, 175, 176, 177, 178, 0, + 1515, 180, 181, 182, 183, 184, 185, 186, 187, 188, + 189, 1516, 191, 192, 1517, 194, 0, 195, 0, 196, + 197, 198, 199, 200, 201, 0, 0, 202, 203, 204, + 205, 0, 0, 206, 207, 1073, 209, 210, 0, 211, + 212, 213, 0, 214, 215, 216, 0, 217, 218, 219, + 220, 0, 222, 223, 224, 225, 226, 227, 0, 0, + 229, 0, 230, 231, 1518, 233, 0, 234, 0, 235, + 1519, 0, 1520, 238, 239, -808, 1521, 242, 0, 243, + 0, 0, 0, 246, 247, 0, 248, 249, 250, 251, + 252, 253, 254, 1522, 256, 257, 258, 259, 0, 260, + 261, 262, 263, 264, 265, 266, 0, 267, 1523, 0, + 270, 271, 272, 273, 274, 1524, 1525, 0, 1526, 0, + 278, 1527, 1528, 281, 1529, 283, 284, 285, 286, 287, + 288, 0, 0, 289, 1530, 291, 1531, 0, 293, 294, + 295, 296, 297, 298, 299, 300, 1532, 302, 303, 304, + 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, + 315, 316, 317, 318, 319, 320, 321, 1533, 1534, 1535, + 325, 326, 327, 0, 0, 329, 330, 1536, 332, 0, + 0, 334, 1537, 336, 337, 338, 0, 339, 340, 0, + 0, 341, 342, 343, 0, 0, 344, 345, 0, 1538, + 348, 1539, 0, 351, 352, 353, 354, 355, 356, 357, + 358, 359, 360, 361, 0, 0, 0, 0, 362, 363, + 0, 1540, 366, 367, 0, 369, 370, 371, 0, 372, + 373, 374, 375, 376, 377, 0, 378, 379, 380, 381, + 382, 1541, 384, 385, 386, 387, 0, 388, 389, 390, + 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, + 0, 401, 402, 1542, 404, 405, 406, 1543, 408, 409, + 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, + 420, 0, 1544, 421, 422, 423, 424, 425, 426, 1545, + 428, 429, 0, 1546, 431, 432, 1547, 434, 0, 435, + 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, + 446, 1548, 448, 0, 0, 0, 450, 451, 0, 452, + 1549, 454, 455, 456, 457, 458, 0, 459, 1550, 1551, + 0, 0, 462, 463, 0, 465, 0, 0, 467, 468, + 1552, 470, 471, 472, 473, 474, 1553, 0, 475, 476, + 477, 0, 478, 479, 480, 481, 0, 482, 483, 484, + 485, 486, 0, 1554, 489, 0, 490, 1555, 492, 493, + 494, 495, 496, 497, 498, 0, 0, 499, 0, 0, + 500, 501, 502, 503, 504, 505, 528, 0, 554, 0, + 0, 0, 0, 0, 0, 0, 0, 517, 518, 519, + 520, 0, 0, 0, 0, 118, 119, 120, 121, 122, + 123, 124, 125, 0, 126, 127, 128, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 130, 131, 0, 132, + 133, 134, 0, 136, 137, 138, 139, 140, 0, 142, + 143, 0, 144, 145, 146, 147, 148, 149, 0, 0, + 150, 151, 152, 153, 154, 155, 156, 0, 157, 158, + 159, 160, 161, 0, 0, 0, 163, 164, 165, 166, + 167, 168, 0, 170, 171, 172, 0, 173, 174, 175, + 176, 177, 178, 0, 0, 180, 181, 182, 183, 184, + 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, + 0, 195, 0, 196, 197, 198, 199, 200, 201, 0, + 0, 202, 203, 204, 205, 0, 0, 206, 207, 208, + 209, 210, 0, 211, 212, 213, 0, 214, 215, 216, + 0, 217, 218, 219, 220, 221, 222, 223, 224, 225, + 226, 227, 228, 0, 229, 0, 230, 231, 232, 233, + 0, 234, 0, 235, 0, 0, 0, 238, 239, 529, + 0, 242, 0, 243, 0, 244, 245, 246, 247, 0, + 248, 249, 250, 251, 252, 3050, 254, 0, 256, 257, + 258, 259, 0, 260, 261, 262, 263, 264, 265, 266, + 0, 267, 0, 269, 270, 271, 272, 273, 274, 275, + 276, 0, 277, 0, 278, 0, 0, 281, 0, 283, + 284, 285, 286, 287, 288, 0, 0, 289, 0, 291, + 0, 0, 293, 294, 295, 296, 297, 298, 299, 300, + 530, 302, 303, 304, 305, 306, 307, 308, 309, 310, + 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, + 321, 322, 0, 324, 325, 326, 327, 328, 0, 329, + 330, 0, 332, 0, 333, 334, 335, 336, 337, 338, + 0, 339, 340, 0, 0, 341, 342, 343, 0, 0, + 344, 345, 346, 0, 348, 0, 350, 351, 352, 353, + 354, 355, 356, 357, 358, 359, 360, 361, 0, 0, + 0, 0, 362, 363, 364, 0, 366, 367, 368, 369, + 370, 371, 0, 372, 373, 374, 375, 376, 377, 0, + 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, + 0, 388, 389, 390, 391, 392, 393, 394, 395, 396, + 397, 398, 399, 400, 0, 401, 402, 0, 404, 405, + 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, + 416, 417, 418, 419, 420, 0, 0, 421, 422, 423, + 424, 425, 426, 427, 428, 429, 0, 0, 431, 432, + 433, 434, 0, 435, 436, 437, 438, 439, 440, 441, + 442, 443, 444, 445, 446, 531, 448, 449, 0, 0, + 450, 451, 0, 452, 0, 454, 455, 456, 457, 458, + 0, 459, 460, 461, 0, 0, 462, 463, 464, 465, + 466, 0, 467, 468, 469, 470, 471, 472, 473, 474, + 0, 0, 475, 476, 477, 0, 478, 479, 480, 481, + 0, 482, 483, 484, 485, 486, 487, 488, 489, 0, + 490, 0, 492, 493, 494, 495, 496, 497, 498, 0, + 0, 499, 0, 0, 500, 501, 502, 503, 504, 505, + 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, + 516, 517, 518, 519, 520, 528, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 118, 119, 120, 121, 122, 123, + 124, 125, 0, 126, 127, 128, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 130, 131, 0, 132, 133, + 134, 0, 136, 137, 138, 139, 140, 0, 142, 143, + 0, 144, 145, 146, 147, 148, 149, 0, 0, 150, + 151, 152, 153, 154, 155, 156, 0, 157, 158, 159, + 160, 161, 0, 0, 0, 163, 164, 165, 166, 167, + 168, 0, 170, 171, 172, 0, 173, 174, 175, 176, + 177, 178, 0, 0, 180, 181, 182, 183, 184, 185, + 186, 187, 188, 189, 190, 191, 192, 193, 194, 0, + 195, 0, 196, 197, 198, 199, 200, 201, 0, 0, + 202, 203, 204, 205, 0, 0, 206, 207, 208, 209, + 210, 0, 211, 212, 213, 0, 214, 215, 216, 0, + 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, + 227, 228, 0, 229, 0, 230, 231, 232, 233, 0, + 234, 0, 235, 0, 0, 0, 238, 239, 529, 0, + 242, 0, 243, 0, 244, 245, 246, 247, 0, 248, + 249, 250, 251, 252, 253, 254, 0, 256, 257, 258, + 259, 0, 260, 261, 262, 263, 264, 265, 266, 0, + 267, 0, 269, 270, 271, 272, 273, 274, 275, 276, + 0, 277, 0, 278, 0, 0, 281, 0, 283, 284, + 285, 286, 287, 288, 0, 0, 289, 0, 291, 0, + 0, 293, 294, 295, 296, 297, 298, 299, 300, 530, + 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, + 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, + 322, 0, 324, 325, 326, 327, 328, 0, 329, 330, + 0, 332, 0, 333, 334, 335, 336, 337, 338, 0, + 339, 340, 0, 0, 341, 342, 343, 0, 0, 344, + 345, 346, 0, 348, 0, 350, 351, 352, 353, 354, + 355, 356, 357, 358, 359, 360, 361, 0, 0, 0, + 0, 362, 363, 364, 0, 366, 367, 368, 369, 370, + 371, 0, 372, 373, 374, 375, 376, 377, 0, 378, + 379, 380, 381, 382, 383, 384, 385, 386, 387, 0, + 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, + 398, 399, 400, 0, 401, 402, 0, 404, 405, 406, + 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, + 417, 418, 419, 420, 0, 0, 421, 422, 423, 424, + 425, 426, 427, 428, 429, 0, 0, 431, 432, 433, + 434, 0, 435, 436, 437, 438, 439, 440, 441, 442, + 443, 444, 445, 446, 531, 448, 449, 0, 0, 450, + 451, 0, 452, 0, 454, 455, 456, 457, 458, 0, + 459, 460, 461, 0, 0, 462, 463, 464, 465, 466, + 0, 467, 468, 469, 470, 471, 472, 473, 474, 0, + 0, 475, 476, 477, 0, 478, 479, 480, 481, 0, + 482, 483, 484, 485, 486, 487, 488, 489, 0, 490, + 0, 492, 493, 494, 495, 496, 497, 498, 0, 0, + 499, 0, 0, 500, 501, 502, 503, 504, 505, 506, + 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, + 517, 518, 519, 520, 528, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 118, 119, 120, 121, 122, 123, 124, + 125, 0, 126, 127, 128, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 130, 131, 0, 132, 133, 134, + 0, 136, 137, 138, 139, 140, 0, 142, 143, 0, + 144, 145, 146, 147, 148, 149, 0, 0, 150, 151, + 152, 153, 154, 155, 156, 0, 157, 158, 159, 160, + 161, 0, 0, 0, 163, 164, 165, 166, 167, 168, + 0, 170, 171, 172, 0, 173, 174, 175, 176, 177, + 178, 0, 0, 180, 181, 182, 183, 184, 185, 186, + 187, 188, 189, 190, 191, 192, 193, 194, 0, 195, + 0, 196, 197, 198, 199, 200, 201, 0, 0, 202, + 203, 204, 205, 0, 0, 206, 207, 208, 209, 210, + 0, 211, 212, 213, 0, 214, 215, 216, 0, 217, + 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, + 228, 0, 229, 0, 230, 231, 232, 233, 0, 234, + 0, 235, 0, 0, 0, 238, 239, 529, 0, 843, + 0, 243, 0, 244, 245, 246, 247, 0, 248, 249, + 250, 251, 252, 253, 254, 0, 256, 257, 258, 259, + 0, 260, 261, 262, 263, 264, 265, 266, 0, 267, + 0, 269, 270, 271, 272, 273, 274, 275, 276, 0, + 277, 0, 278, 0, 0, 281, 0, 283, 284, 285, + 286, 287, 288, 0, 0, 289, 0, 291, 0, 0, + 293, 294, 844, 296, 297, 298, 299, 300, 530, 302, + 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, + 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, + 0, 324, 325, 326, 327, 328, 0, 329, 330, 0, + 332, 0, 333, 334, 335, 336, 337, 338, 0, 339, + 340, 0, 0, 341, 342, 343, 0, 0, 344, 345, + 346, 0, 348, 0, 350, 351, 352, 353, 354, 355, + 356, 357, 358, 359, 360, 361, 0, 0, 0, 0, + 362, 363, 364, 0, 366, 367, 368, 369, 370, 371, + 0, 372, 373, 374, 375, 376, 377, 0, 378, 379, + 380, 381, 382, 383, 384, 385, 386, 387, 0, 388, + 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, + 399, 400, 0, 401, 402, 0, 404, 405, 406, 407, + 408, 409, 410, 411, 845, 413, 414, 415, 416, 417, + 418, 419, 420, 0, 0, 421, 422, 423, 424, 846, + 426, 427, 428, 429, 0, 0, 431, 432, 433, 434, + 0, 435, 436, 437, 438, 439, 440, 441, 442, 443, + 444, 445, 446, 531, 448, 449, 0, 0, 450, 451, + 0, 452, 0, 454, 455, 456, 457, 458, 0, 459, + 847, 461, 0, 0, 462, 463, 464, 465, 466, 0, + 467, 468, 469, 470, 471, 472, 473, 474, 0, 0, + 475, 476, 477, 0, 478, 479, 480, 481, 0, 482, + 483, 484, 485, 486, 487, 488, 848, 0, 490, 0, + 492, 493, 494, 495, 496, 497, 498, 0, 0, 499, + 0, 0, 500, 501, 502, 503, 504, 505, 506, 507, + 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, + 518, 519, 520, 528, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 118, 119, 120, 121, 122, 123, 124, 125, + 0, 126, 127, 128, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 130, 131, 0, 132, 133, 134, 0, + 136, 137, 138, 139, 140, 0, 142, 143, 0, 144, + 145, 146, 147, 148, 149, 0, 0, 150, 151, 152, + 153, 154, 155, 156, 0, 157, 158, 159, 160, 161, + 0, 0, 0, 163, 164, 165, 166, 167, 168, 0, + 170, 171, 172, 0, 173, 174, 175, 176, 177, 178, + 0, 0, 180, 181, 182, 183, 184, 185, 186, 187, + 188, 189, 190, 191, 192, 193, 194, 0, 195, 0, + 196, 197, 198, 199, 200, 201, 0, 0, 202, 203, + 204, 205, 0, 0, 206, 207, 208, 209, 210, 0, + 211, 212, 213, 0, 214, 215, 216, 0, 217, 218, + 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, + 0, 229, 0, 230, 231, 232, 233, 0, 234, 0, + 235, 0, 0, 0, 238, 239, 529, 0, 242, 0, + 243, 0, 244, 245, 246, 247, 0, 248, 249, 250, + 251, 252, 960, 254, 0, 256, 257, 258, 259, 0, + 260, 261, 262, 263, 264, 265, 266, 0, 267, 0, + 269, 270, 271, 272, 273, 274, 275, 276, 0, 277, + 0, 278, 0, 0, 281, 0, 283, 284, 285, 286, + 287, 288, 0, 0, 289, 0, 291, 0, 0, 293, + 294, 295, 296, 297, 298, 299, 300, 530, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, - 314, -1, -1, -1, -1, 319, 320, 321, 322, 323, - 324, 325, 326, 327, 328, -1, 330, 331, 332, 333, - 334, 335, -1, 337, 338, 339, 340, 341, 342, 343, - 344, 345, 346, -1, 348, 349, 350, 351, 352, 353, - 354, 355, 356, 357, 358, 359, 360, -1, 362, 363, - 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, - 374, 375, 376, 377, 378, 379, 380, 381, -1, -1, - 384, 385, 386, 387, 388, 389, 390, 391, 392, -1, - 394, 395, 396, 397, 398, -1, 400, 401, 402, 403, + 314, 315, 316, 317, 318, 319, 320, 321, 322, 0, + 324, 325, 326, 327, 328, 0, 329, 330, 0, 332, + 0, 333, 334, 335, 336, 337, 338, 0, 339, 340, + 0, 0, 341, 342, 343, 0, 0, 344, 345, 346, + 0, 348, 0, 350, 351, 352, 353, 354, 355, 356, + 357, 358, 359, 360, 361, 0, 0, 0, 0, 362, + 363, 364, 0, 366, 367, 368, 369, 370, 371, 0, + 372, 373, 374, 375, 376, 377, 0, 378, 379, 380, + 381, 382, 383, 384, 385, 386, 387, 0, 388, 389, + 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, + 400, 0, 401, 402, 0, 404, 405, 406, 407, 408, + 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, + 419, 420, 0, 0, 421, 422, 423, 424, 425, 426, + 427, 428, 429, 0, 0, 431, 432, 433, 434, 0, + 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, + 445, 446, 531, 448, 449, 0, 0, 450, 451, 0, + 452, 0, 454, 455, 456, 457, 458, 0, 459, 460, + 461, 0, 0, 462, 463, 464, 465, 466, 0, 467, + 468, 469, 470, 471, 472, 473, 474, 0, 0, 475, + 476, 477, 0, 478, 479, 480, 481, 0, 482, 483, + 484, 485, 486, 487, 488, 489, 0, 490, 0, 492, + 493, 494, 495, 496, 497, 498, 0, 0, 499, 0, + 0, 500, 501, 502, 503, 504, 505, 506, 507, 508, + 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, + 519, 520, 528, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 118, 119, 120, 121, 122, 123, 124, 125, 0, + 126, 127, 128, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 130, 131, 0, 132, 133, 134, 0, 136, + 137, 138, 139, 140, 0, 142, 143, 0, 144, 145, + 146, 147, 148, 149, 0, 0, 150, 151, 152, 153, + 154, 155, 156, 0, 157, 158, 159, 160, 161, 0, + 0, 0, 163, 164, 165, 166, 167, 168, 0, 170, + 171, 172, 0, 173, 174, 175, 176, 177, 178, 0, + 0, 180, 181, 182, 183, 184, 185, 186, 187, 188, + 189, 190, 191, 192, 193, 194, 0, 195, 0, 196, + 197, 198, 199, 200, 201, 0, 0, 202, 203, 204, + 205, 0, 0, 206, 207, 208, 209, 210, 0, 211, + 212, 213, 0, 214, 215, 216, 0, 217, 218, 219, + 220, 221, 222, 223, 224, 225, 226, 227, 228, 0, + 229, 0, 230, 231, 232, 233, 0, 234, 0, 235, + 0, 0, 0, 238, 239, 529, 0, 242, 0, 243, + 0, 244, 245, 246, 247, 0, 248, 249, 250, 251, + 252, 253, 254, 0, 256, 257, 258, 259, 0, 260, + 261, 262, 263, 264, 265, 266, 0, 267, 0, 269, + 270, 271, 272, 273, 274, 275, 276, 0, 277, 0, + 278, 0, 0, 281, 0, 283, 284, 285, 286, 287, + 288, 0, 0, 289, 0, 291, 0, 0, 293, 294, + 295, 296, 297, 298, 299, 300, 530, 302, 303, 304, + 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, + 315, 316, 317, 318, 319, 320, 321, 322, 0, 324, + 325, 326, 327, 328, 0, 329, 330, 0, 332, 0, + 333, 334, 335, 336, 337, 338, 0, 339, 340, 0, + 0, 341, 342, 343, 0, 0, 344, 345, 346, 0, + 348, 0, 350, 351, 352, 353, 354, 355, 356, 357, + 358, 359, 360, 361, 0, 0, 0, 0, 362, 363, + 364, 0, 366, 367, 368, 369, 370, 371, 0, 372, + 373, 374, 375, 376, 377, 0, 378, 379, 380, 381, + 382, 383, 384, 385, 386, 387, 0, 388, 389, 390, + 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, + 0, 401, 402, 0, 404, 405, 406, 407, 408, 409, + 410, 411, 845, 413, 414, 415, 416, 417, 418, 419, + 420, 0, 0, 421, 422, 423, 424, 425, 426, 427, + 428, 429, 0, 0, 431, 432, 433, 434, 0, 435, + 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, + 446, 531, 448, 449, 0, 0, 450, 451, 0, 452, + 0, 454, 455, 456, 457, 458, 0, 459, 847, 461, + 0, 0, 462, 463, 464, 465, 466, 0, 467, 468, + 469, 470, 471, 472, 473, 474, 0, 0, 475, 476, + 477, 0, 478, 479, 480, 481, 0, 482, 483, 484, + 485, 486, 487, 488, 489, 0, 490, 0, 492, 493, + 494, 495, 496, 497, 498, 0, 0, 499, 0, 0, + 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, + 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, + 520, 528, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 118, 119, 120, 121, 122, 123, 124, 125, 0, 126, + 127, 128, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 130, 131, 0, 132, 133, 134, 0, 136, 137, + 138, 139, 140, 0, 142, 143, 0, 144, 145, 146, + 147, 148, 149, 0, 0, 150, 151, 152, 153, 154, + 155, 156, 0, 157, 158, 159, 160, 161, 0, 0, + 0, 163, 164, 165, 166, 167, 168, 0, 170, 171, + 172, 0, 173, 174, 175, 176, 177, 178, 0, 0, + 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, + 190, 191, 192, 193, 194, 0, 195, 0, 196, 197, + 198, 199, 200, 201, 0, 0, 202, 203, 204, 205, + 0, 0, 206, 207, 208, 209, 210, 0, 211, 212, + 213, 0, 214, 215, 216, 0, 217, 218, 219, 220, + 221, 222, 223, 224, 225, 226, 227, 228, 0, 229, + 0, 230, 231, 232, 233, 0, 234, 0, 235, 0, + 0, 0, 238, 239, 529, 0, 242, 0, 243, 0, + 244, 245, 246, 247, 0, 248, 249, 250, 251, 252, + 1322, 254, 0, 256, 257, 258, 259, 0, 260, 261, + 262, 263, 264, 265, 266, 0, 267, 0, 269, 270, + 271, 272, 273, 274, 275, 276, 0, 277, 0, 278, + 0, 0, 281, 0, 283, 284, 285, 286, 287, 288, + 0, 0, 289, 0, 291, 0, 0, 293, 294, 295, + 296, 297, 298, 299, 300, 530, 302, 303, 304, 305, + 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, + 316, 317, 318, 319, 320, 321, 322, 0, 324, 325, + 326, 327, 328, 0, 329, 330, 0, 332, 0, 333, + 334, 335, 336, 337, 338, 0, 339, 340, 0, 0, + 341, 342, 343, 0, 0, 344, 345, 346, 0, 348, + 0, 350, 351, 352, 353, 354, 355, 356, 357, 358, + 359, 360, 361, 0, 0, 0, 0, 362, 363, 364, + 0, 366, 367, 368, 369, 370, 371, 0, 372, 373, + 374, 375, 376, 377, 0, 378, 379, 380, 381, 382, + 383, 384, 385, 386, 387, 0, 388, 389, 390, 391, + 392, 393, 394, 395, 396, 397, 398, 399, 400, 0, + 401, 402, 0, 404, 405, 406, 407, 408, 409, 410, + 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, + 0, 0, 421, 422, 423, 424, 425, 426, 427, 428, + 429, 0, 0, 431, 432, 433, 434, 0, 435, 436, + 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, + 531, 448, 449, 0, 0, 450, 451, 0, 452, 0, + 454, 455, 456, 457, 458, 0, 459, 460, 461, 0, + 0, 462, 463, 464, 465, 466, 0, 467, 468, 469, + 470, 471, 472, 473, 474, 0, 0, 475, 476, 477, + 0, 478, 479, 480, 481, 0, 482, 483, 484, 485, + 486, 487, 488, 489, 0, 490, 0, 492, 493, 494, + 495, 496, 497, 498, 0, 0, 499, 0, 0, 500, + 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, + 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, + 528, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 118, + 119, 120, 121, 122, 123, 124, 125, 0, 126, 127, + 128, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 130, 131, 0, 132, 133, 134, 0, 136, 137, 138, + 139, 140, 0, 142, 143, 0, 144, 145, 146, 147, + 148, 149, 0, 0, 150, 151, 152, 153, 154, 155, + 156, 0, 157, 158, 159, 160, 161, 0, 0, 0, + 163, 164, 165, 166, 167, 168, 0, 170, 171, 172, + 0, 173, 174, 175, 176, 177, 178, 0, 0, 180, + 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, + 191, 192, 193, 194, 0, 195, 0, 196, 197, 198, + 199, 200, 201, 0, 0, 202, 203, 204, 205, 0, + 0, 206, 207, 208, 209, 210, 0, 211, 212, 213, + 0, 214, 215, 216, 0, 217, 218, 219, 220, 221, + 222, 223, 224, 225, 226, 227, 228, 0, 229, 0, + 230, 231, 232, 233, 0, 234, 0, 235, 0, 0, + 0, 238, 239, 529, 0, 242, 0, 243, 0, 244, + 245, 246, 247, 0, 248, 249, 250, 251, 252, 1343, + 254, 0, 256, 257, 258, 259, 0, 260, 261, 262, + 263, 264, 265, 266, 0, 267, 0, 269, 270, 271, + 272, 273, 274, 275, 276, 0, 277, 0, 278, 0, + 0, 281, 0, 283, 284, 285, 286, 287, 288, 0, + 0, 289, 0, 291, 0, 0, 293, 294, 295, 296, + 297, 298, 299, 300, 530, 302, 303, 304, 305, 306, + 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, + 317, 318, 319, 320, 321, 322, 0, 324, 325, 326, + 327, 328, 0, 329, 330, 0, 332, 0, 333, 334, + 335, 336, 337, 338, 0, 339, 340, 0, 0, 341, + 342, 343, 0, 0, 344, 345, 346, 0, 348, 0, + 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, + 360, 361, 0, 0, 0, 0, 362, 363, 364, 0, + 366, 367, 368, 369, 370, 371, 0, 372, 373, 374, + 375, 376, 377, 0, 378, 379, 380, 381, 382, 383, + 384, 385, 386, 387, 0, 388, 389, 390, 391, 392, + 393, 394, 395, 396, 397, 398, 399, 400, 0, 401, + 402, 0, 404, 405, 406, 407, 408, 409, 410, 411, + 412, 413, 414, 415, 416, 417, 418, 419, 420, 0, + 0, 421, 422, 423, 424, 425, 426, 427, 428, 429, + 0, 0, 431, 432, 433, 434, 0, 435, 436, 437, + 438, 439, 440, 441, 442, 443, 444, 445, 446, 531, + 448, 449, 0, 0, 450, 451, 0, 452, 0, 454, + 455, 456, 457, 458, 0, 459, 460, 461, 0, 0, + 462, 463, 464, 465, 466, 0, 467, 468, 469, 470, + 471, 472, 473, 474, 0, 0, 475, 476, 477, 0, + 478, 479, 480, 481, 0, 482, 483, 484, 485, 486, + 487, 488, 489, 0, 490, 0, 492, 493, 494, 495, + 496, 497, 498, 0, 0, 499, 0, 0, 500, 501, + 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, + 512, 513, 514, 515, 516, 517, 518, 519, 520, 528, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 118, 119, + 120, 121, 122, 123, 124, 125, 0, 126, 127, 128, + 0, 0, 0, 0, 0, 0, 1698, 0, 0, 130, + 131, 0, 132, 133, 134, 0, 136, 137, 138, 139, + 140, 0, 142, 143, 0, 144, 145, 146, 147, 148, + 149, 0, 0, 150, 151, 152, 153, 154, 155, 156, + 0, 157, 158, 159, 160, 161, 0, 0, 0, 163, + 164, 165, 166, 167, 168, 0, 170, 171, 172, 0, + 173, 174, 175, 176, 177, 178, 0, 0, 180, 181, + 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, + 192, 193, 194, 0, 195, 0, 196, 197, 198, 199, + 200, 201, 0, 0, 202, 203, 204, 205, 0, 0, + 206, 207, 208, 209, 210, 0, 211, 212, 213, 0, + 214, 215, 216, 0, 217, 218, 219, 220, 221, 222, + 223, 224, 225, 226, 227, 228, 0, 229, 0, 230, + 231, 232, 233, 0, 234, 0, 235, 0, 0, 0, + 238, 239, 529, 0, 242, 0, 243, 0, 244, 245, + 246, 247, 0, 248, 249, 250, 251, 252, 253, 254, + 0, 256, 257, 258, 259, 0, 260, 261, 262, 263, + 264, 265, 266, 0, 267, 0, 269, 270, 271, 272, + 273, 274, 275, 276, 0, 277, 0, 278, 0, 0, + 281, 0, 283, 284, 285, 286, 287, 288, 0, 0, + 289, 0, 291, 0, 0, 293, 294, 295, 296, 297, + 298, 299, 300, 530, 302, 303, 304, 305, 306, 307, + 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, + 318, 319, 320, 321, 322, 0, 324, 325, 326, 327, + 328, 0, 329, 330, 0, 332, 0, 333, 334, 335, + 336, 337, 338, 0, 339, 340, 0, 0, 341, 342, + 343, 0, 0, 344, 345, 346, 0, 348, 0, 350, + 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, + 361, 0, 0, 0, 0, 362, 363, 364, 0, 366, + 367, 368, 369, 370, 371, 0, 372, 373, 374, 375, + 376, 377, 0, 378, 379, 380, 381, 382, 383, 384, + 385, 386, 387, 0, 388, 389, 390, 391, 392, 393, + 394, 395, 396, 397, 398, 399, 400, 0, 401, 402, + 0, 404, 405, 406, 407, 408, 409, 410, 411, 412, + 413, 414, 415, 416, 417, 418, 419, 420, 0, 0, + 421, 422, 423, 424, 425, 0, 427, 428, 429, 0, + 0, 431, 432, 433, 434, 0, 435, 436, 437, 438, + 439, 440, 441, 442, 443, 444, 445, 446, 531, 448, + 449, 0, 0, 450, 451, 0, 452, 0, 454, 455, + 456, 457, 458, 0, 459, 460, 461, 0, 0, 462, + 463, 464, 465, 466, 0, 467, 468, 469, 470, 471, + 472, 473, 474, 0, 0, 475, 476, 477, 0, 478, + 479, 480, 481, 0, 482, 483, 484, 485, 486, 487, + 488, 489, 0, 490, 0, 492, 493, 494, 495, 496, + 497, 498, 0, 0, 499, 0, 0, 500, 501, 502, + 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, + 513, 514, 515, 516, 517, 518, 519, 520, 528, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 118, 119, 120, + 121, 122, 123, 124, 125, 0, 126, 127, 128, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 130, 131, + 0, 132, 133, 134, 0, 136, 137, 138, 139, 140, + 0, 142, 143, 0, 144, 145, 146, 147, 148, 149, + 0, 0, 150, 151, 152, 153, 154, 155, 156, 0, + 157, 158, 159, 160, 161, 0, 0, 0, 163, 164, + 165, 166, 167, 168, 0, 170, 171, 172, 0, 173, + 174, 175, 176, 177, 178, 0, 0, 180, 181, 182, + 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, + 193, 194, 0, 195, 0, 196, 197, 198, 199, 200, + 201, 0, 0, 202, 203, 204, 205, 0, 0, 206, + 207, 208, 209, 210, 0, 211, 212, 213, 0, 214, + 215, 216, 0, 217, 218, 219, 220, 221, 222, 223, + 224, 225, 226, 227, 228, 0, 229, 0, 230, 231, + 232, 233, 0, 234, 0, 235, 0, 0, 0, 238, + 239, 529, 0, 242, 0, 243, 0, 244, 245, 246, + 247, 0, 248, 249, 250, 251, 252, 1885, 254, 0, + 256, 257, 258, 259, 0, 260, 261, 262, 263, 264, + 265, 266, 0, 267, 0, 269, 270, 271, 272, 273, + 274, 275, 276, 0, 277, 0, 278, 0, 0, 281, + 0, 283, 284, 285, 286, 287, 288, 0, 0, 289, + 0, 291, 0, 0, 293, 294, 295, 296, 297, 298, + 299, 300, 530, 302, 303, 304, 305, 306, 307, 308, + 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, + 319, 320, 321, 322, 0, 324, 325, 326, 327, 328, + 0, 329, 330, 0, 332, 0, 333, 334, 335, 336, + 337, 338, 0, 339, 340, 0, 0, 341, 342, 343, + 0, 0, 344, 345, 346, 0, 348, 0, 350, 351, + 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, + 0, 0, 0, 0, 362, 363, 364, 0, 366, 367, + 368, 369, 370, 371, 0, 372, 373, 374, 375, 376, + 377, 0, 378, 379, 380, 381, 382, 383, 384, 385, + 386, 387, 0, 388, 389, 390, 391, 392, 393, 394, + 395, 396, 397, 398, 399, 400, 0, 401, 402, 0, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, - 414, -1, -1, 417, 418, -1, 420, 421, 422, 423, - 424, 425, 426, -1, 428, 429, 430, -1, -1, 433, - 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, - 444, 445, 446, -1, -1, 449, 450, 451, -1, 453, - 454, 455, 456, -1, 458, 459, 460, 461, 462, 463, - 464, 465, -1, 467, 468, 469, 470, 471, 472, 473, - 474, 475, -1, -1, 478, -1, -1, 481, 482, 483, - 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, - 494, 495, 496, 497, 498, 499, 500, 501, -1, -1, - -1, -1, -1, -1, -1, 509, 510, -1, -1, -1, - -1, -1, 516, -1, 518, -1, -1, -1, -1, -1, - 524, 525, 526, 527, 3, 4, 5, 6, 7, 8, - 9, 10, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 22, 23, 24, 25, 26, 27, 28, - 29, -1, 31, 32, 33, -1, -1, -1, -1, -1, - 39, -1, -1, 42, 43, 44, -1, 46, 47, 48, - 49, 50, 51, 52, 53, 54, 55, 56, 57, -1, - 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, - 69, 70, 71, 72, 73, -1, 75, 76, 77, 78, - 79, -1, 81, -1, 83, 84, 85, 86, 87, 88, - 89, 90, 91, 92, -1, 94, 95, 96, 97, 98, - 99, -1, 101, 102, 103, 104, 105, 106, 107, 108, - 109, 110, 111, 112, 113, 114, 115, 116, -1, 118, - -1, 120, 121, 122, 123, 124, 125, -1, -1, 128, - 129, 130, 131, -1, -1, 134, 135, 136, 137, 138, - -1, 140, 141, 142, -1, 144, 145, 146, -1, 148, - 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, - 159, 160, 161, -1, 163, 164, 165, 166, -1, 168, - -1, 170, 171, -1, 173, 174, 175, 176, 177, 178, - -1, 180, -1, 182, 183, 184, 185, -1, 187, 188, - 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, - -1, 200, 201, 202, 203, 204, 205, 206, -1, 208, - 209, 210, 211, 212, 213, 214, 215, 216, 217, -1, - 219, -1, 221, -1, 223, 224, 225, 226, 227, 228, - 229, 230, 231, -1, -1, 234, 235, 236, 237, -1, - 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, - 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, - 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, - 269, 270, 271, 272, 273, 274, -1, 276, 277, 278, - 279, 280, 281, 282, 283, 284, 285, 286, -1, 288, - 289, -1, -1, 292, 293, 294, -1, -1, 297, 298, - 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, - 309, 310, 311, 312, 313, 314, -1, -1, -1, -1, - 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, - -1, 330, 331, 332, 333, 334, 335, -1, 337, 338, - 339, 340, 341, 342, 343, 344, 345, 346, -1, 348, - 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, - 359, 360, -1, 362, 363, 364, 365, 366, 367, 368, - 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, - 379, 380, 381, -1, -1, 384, 385, 386, 387, 388, - 389, 390, 391, 392, -1, 394, 395, 396, 397, 398, - -1, 400, 401, 402, 403, 404, 405, 406, 407, 408, - 409, 410, 411, 412, 413, 414, -1, -1, 417, 418, - -1, 420, 421, 422, 423, 424, 425, 426, -1, 428, - 429, 430, -1, -1, 433, 434, 435, 436, 437, 438, - 439, 440, 441, 442, 443, 444, 445, 446, -1, -1, - 449, 450, 451, -1, 453, 454, 455, 456, -1, 458, - 459, 460, 461, 462, 463, 464, 465, -1, 467, 468, - 469, 470, 471, 472, 473, 474, 475, -1, -1, 478, - -1, -1, 481, 482, 483, 484, 485, 486, 487, 488, - 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, - 499, 500, 501, -1, -1, -1, -1, -1, -1, -1, - 509, 510, -1, -1, -1, -1, -1, 516, -1, 518, - -1, -1, -1, -1, -1, 524, 525, 526, 527, 3, - 4, 5, 6, 7, -1, 9, 10, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 22, 23, - 24, 25, 26, 27, 28, 29, -1, 31, 32, 33, - -1, -1, -1, -1, -1, 39, -1, -1, 42, 43, - 44, -1, 46, 47, 48, 49, 50, 51, 52, 53, - 54, 55, 56, 57, -1, 59, 60, 61, 62, 63, - 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, - -1, 75, 76, 77, 78, 79, -1, 81, -1, 83, - 84, 85, 86, 87, 88, 89, 90, 91, 92, -1, - 94, 95, 96, 97, 98, 99, -1, 101, 102, 103, - 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, - 114, 115, 116, -1, 118, -1, 120, 121, 122, 123, - 124, 125, -1, -1, 128, 129, 130, 131, -1, -1, - 134, 135, 136, 137, 138, -1, 140, 141, 142, -1, - 144, 145, 146, -1, 148, 149, 150, 151, 152, 153, - 154, 155, 156, 157, 158, 159, 160, 161, -1, 163, - 164, 165, 166, -1, 168, -1, 170, 171, -1, 173, - 174, 175, 176, 177, 178, -1, 180, 181, 182, 183, - 184, 185, -1, 187, 188, 189, 190, 191, 192, 193, - 194, 195, 196, 197, 198, -1, 200, 201, 202, 203, - 204, 205, 206, -1, 208, 209, 210, 211, 212, 213, - 214, 215, 216, 217, -1, 219, -1, 221, 222, 223, - 224, 225, 226, 227, 228, 229, 230, 231, -1, -1, - 234, 235, 236, 237, -1, 239, 240, 241, 242, 243, - 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, - 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, - 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, - 274, -1, 276, 277, 278, 279, 280, 281, 282, 283, - 284, 285, 286, -1, 288, 289, -1, -1, 292, 293, - 294, -1, -1, 297, 298, 299, 300, 301, 302, 303, + 414, 415, 416, 417, 418, 419, 420, 0, 0, 421, + 422, 423, 424, 425, 426, 427, 428, 429, 0, 0, + 431, 432, 433, 434, 0, 435, 436, 437, 438, 439, + 440, 441, 442, 443, 444, 445, 446, 531, 448, 449, + 0, 0, 450, 451, 0, 452, 0, 454, 455, 456, + 457, 458, 0, 459, 460, 461, 0, 0, 462, 463, + 464, 465, 466, 0, 467, 468, 469, 470, 471, 472, + 473, 474, 0, 0, 475, 476, 477, 0, 478, 479, + 480, 481, 0, 482, 483, 484, 485, 486, 487, 488, + 489, 0, 490, 0, 492, 493, 494, 495, 496, 497, + 498, 0, 0, 499, 0, 0, 500, 501, 502, 503, + 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, + 514, 515, 516, 517, 518, 519, 520, 528, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 118, 119, 120, 121, + 122, 123, 124, 125, 0, 126, 127, 128, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 130, 131, 0, + 132, 133, 134, 0, 136, 137, 138, 139, 140, 0, + 142, 143, 0, 144, 145, 146, 147, 148, 149, 0, + 0, 150, 151, 152, 153, 154, 155, 156, 0, 157, + 158, 159, 160, 161, 0, 0, 0, 163, 164, 165, + 166, 167, 168, 0, 170, 171, 172, 0, 173, 174, + 175, 176, 177, 178, 0, 0, 180, 181, 182, 183, + 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, + 194, 0, 195, 0, 196, 197, 198, 199, 200, 201, + 0, 0, 202, 203, 204, 205, 0, 0, 206, 207, + 208, 209, 210, 0, 211, 212, 213, 0, 214, 215, + 216, 0, 217, 218, 219, 220, 221, 222, 223, 224, + 225, 226, 227, 228, 0, 229, 0, 230, 231, 232, + 233, 0, 234, 0, 235, 0, 0, 0, 238, 239, + 529, 0, 242, 0, 243, 0, 244, 245, 246, 247, + 0, 248, 249, 250, 251, 252, 2267, 254, 0, 256, + 257, 258, 259, 0, 260, 261, 262, 263, 264, 265, + 266, 0, 267, 0, 269, 270, 271, 272, 273, 274, + 275, 276, 0, 277, 0, 278, 0, 0, 281, 0, + 283, 284, 285, 286, 287, 288, 0, 0, 289, 0, + 291, 0, 0, 293, 294, 295, 296, 297, 298, 299, + 300, 530, 302, 303, 304, 305, 306, 307, 308, 309, + 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, + 320, 321, 322, 0, 324, 325, 326, 327, 328, 0, + 329, 330, 0, 332, 0, 333, 334, 335, 336, 337, + 338, 0, 339, 340, 0, 0, 341, 342, 343, 0, + 0, 344, 345, 346, 0, 348, 0, 350, 351, 352, + 353, 354, 355, 356, 357, 358, 359, 360, 361, 0, + 0, 0, 0, 362, 363, 364, 0, 366, 367, 368, + 369, 370, 371, 0, 372, 373, 374, 375, 376, 377, + 0, 378, 379, 380, 381, 382, 383, 384, 385, 386, + 387, 0, 388, 389, 390, 391, 392, 393, 394, 395, + 396, 397, 398, 399, 400, 0, 401, 402, 0, 404, + 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, + 415, 416, 417, 418, 419, 420, 0, 0, 421, 422, + 423, 424, 425, 426, 427, 428, 429, 0, 0, 431, + 432, 433, 434, 0, 435, 436, 437, 438, 439, 440, + 441, 442, 443, 444, 445, 446, 531, 448, 449, 0, + 0, 450, 451, 0, 452, 0, 454, 455, 456, 457, + 458, 0, 459, 460, 461, 0, 0, 462, 463, 464, + 465, 466, 0, 467, 468, 469, 470, 471, 472, 473, + 474, 0, 0, 475, 476, 477, 0, 478, 479, 480, + 481, 0, 482, 483, 484, 485, 486, 487, 488, 489, + 0, 490, 0, 492, 493, 494, 495, 496, 497, 498, + 0, 0, 499, 0, 0, 500, 501, 502, 503, 504, + 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, + 515, 516, 517, 518, 519, 520, 528, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 118, 119, 120, 121, 122, + 123, 124, 125, 0, 126, 127, 128, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 130, 131, 0, 132, + 133, 134, 0, 136, 137, 138, 139, 140, 0, 142, + 143, 0, 144, 145, 146, 147, 148, 149, 0, 0, + 150, 151, 152, 153, 154, 155, 156, 0, 157, 158, + 159, 160, 161, 0, 0, 0, 163, 164, 165, 166, + 167, 168, 0, 170, 171, 172, 0, 173, 174, 175, + 176, 177, 178, 0, 0, 180, 181, 182, 183, 184, + 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, + 0, 195, 0, 196, 197, 198, 199, 200, 201, 0, + 0, 202, 203, 204, 205, 0, 0, 206, 207, 208, + 209, 210, 0, 211, 212, 213, 0, 214, 215, 216, + 0, 217, 218, 219, 220, 221, 222, 223, 224, 225, + 226, 227, 228, 0, 229, 0, 230, 231, 232, 233, + 0, 234, 0, 235, 0, 0, 0, 238, 239, 529, + 0, 242, 0, 243, 0, 244, 245, 246, 247, 0, + 248, 249, 250, 251, 252, 2282, 254, 0, 256, 257, + 258, 259, 0, 260, 261, 262, 263, 264, 265, 266, + 0, 267, 0, 269, 270, 271, 272, 273, 274, 275, + 276, 0, 277, 0, 278, 0, 0, 281, 0, 283, + 284, 285, 286, 287, 288, 0, 0, 289, 0, 291, + 0, 0, 293, 294, 295, 296, 297, 298, 299, 300, + 530, 302, 303, 304, 305, 306, 307, 308, 309, 310, + 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, + 321, 322, 0, 324, 325, 326, 327, 328, 0, 329, + 330, 0, 332, 0, 333, 334, 335, 336, 337, 338, + 0, 339, 340, 0, 0, 341, 342, 343, 0, 0, + 344, 345, 346, 0, 348, 0, 350, 351, 352, 353, + 354, 355, 356, 357, 358, 359, 360, 361, 0, 0, + 0, 0, 362, 363, 364, 0, 366, 367, 368, 369, + 370, 371, 0, 372, 373, 374, 375, 376, 377, 0, + 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, + 0, 388, 389, 390, 391, 392, 393, 394, 395, 396, + 397, 398, 399, 400, 0, 401, 402, 0, 404, 405, + 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, + 416, 417, 418, 419, 420, 0, 0, 421, 422, 423, + 424, 425, 426, 427, 428, 429, 0, 0, 431, 432, + 433, 434, 0, 435, 436, 437, 438, 439, 440, 441, + 442, 443, 444, 445, 446, 531, 448, 449, 0, 0, + 450, 451, 0, 452, 0, 454, 455, 456, 457, 458, + 0, 459, 460, 461, 0, 0, 462, 463, 464, 465, + 466, 0, 467, 468, 469, 470, 471, 472, 473, 474, + 0, 0, 475, 476, 477, 0, 478, 479, 480, 481, + 0, 482, 483, 484, 485, 486, 487, 488, 489, 0, + 490, 0, 492, 493, 494, 495, 496, 497, 498, 0, + 0, 499, 0, 0, 500, 501, 502, 503, 504, 505, + 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, + 516, 517, 518, 519, 520, 1502, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 118, 119, 120, 121, 122, 123, + 124, 125, 0, 126, 127, 128, 0, 0, 0, 1503, + 0, 0, 0, 0, 1504, 130, 131, 0, 132, 133, + 134, 1505, 136, 137, 138, 0, 1506, 1507, 1508, 1509, + 0, 144, 145, 146, 147, 148, 149, 0, 0, 150, + 151, 152, 153, 1510, 1511, 156, 0, 157, 158, 159, + 160, 0, 0, 1512, 0, 1513, 164, 165, 166, 167, + 168, 1514, 170, 171, 172, 0, 173, 174, 175, 176, + 177, 178, 0, 1515, 180, 181, 182, 183, 184, 185, + 186, 187, 188, 189, 1516, 191, 192, 1517, 194, 0, + 195, 0, 196, 197, 198, 199, 200, 201, 0, 0, + 202, 203, 204, 205, 0, 0, 206, 207, 1073, 209, + 210, 0, 211, 212, 213, 0, 214, 215, 216, 0, + 217, 218, 219, 220, 0, 222, 223, 224, 225, 226, + 227, 0, 0, 229, 0, 230, 231, 1518, 233, 0, + 234, 0, 235, 1519, 0, 1520, 238, 239, 0, 1521, + 242, 0, 243, 0, 0, 0, 246, 247, 0, 248, + 249, 250, 251, 252, 253, 254, 1522, 256, 257, 258, + 259, 0, 260, 261, 262, 263, 264, 265, 266, 0, + 267, 1523, 0, 270, 271, 272, 273, 274, 1524, 1525, + 0, 1526, 0, 278, 1527, 1528, 281, 1529, 283, 284, + 285, 286, 287, 288, 0, 0, 289, 1530, 291, 1531, + 0, 293, 294, 295, 296, 297, 298, 299, 300, 1532, + 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, + 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, + 1533, 1534, 1535, 325, 326, 327, 0, 0, 329, 330, + 1536, 332, 0, 0, 334, 1537, 336, 337, 338, 0, + 339, 340, 0, 0, 341, 342, 343, 0, 0, 344, + 345, 0, 1538, 348, 1539, 0, 351, 352, 353, 354, + 355, 356, 357, 358, 359, 360, 361, 0, 0, 0, + 0, 362, 363, 0, 1540, 366, 367, 0, 369, 370, + 371, 0, 372, 373, 374, 375, 376, 377, 0, 378, + 379, 380, 381, 382, 1541, 384, 385, 386, 387, 0, + 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, + 398, 399, 400, 0, 401, 402, 1542, 404, 405, 406, + 1543, 408, 409, 410, 411, 412, 413, 414, 415, 416, + 417, 418, 419, 420, 0, 1544, 421, 422, 423, 424, + 425, 426, 1545, 428, 429, 0, 1546, 431, 432, 1547, + 434, 0, 435, 436, 437, 438, 439, 440, 441, 442, + 443, 444, 445, 446, 1548, 448, 0, 0, 0, 450, + 451, 0, 452, 1549, 454, 455, 456, 457, 458, 0, + 459, 1550, 1551, 0, 0, 462, 463, 0, 465, 0, + 0, 467, 468, 1552, 470, 471, 472, 473, 474, 1553, + 0, 475, 476, 477, 0, 478, 479, 480, 481, 0, + 482, 483, 484, 485, 486, 0, 1554, 489, 0, 490, + 1555, 492, 493, 494, 495, 496, 497, 498, 0, 0, + 499, 0, 0, 500, 501, 502, 503, 504, 505, 1502, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 517, 518, 519, 520, 0, 0, 0, 0, 118, 119, + 120, 121, 122, 123, 124, 125, 0, 126, 127, 128, + 0, 0, 0, 1503, 0, 0, 0, 0, 1504, 130, + 131, 0, 132, 133, 134, 1505, 136, 137, 138, 0, + 1506, 1507, 1508, 1509, 0, 144, 145, 146, 147, 148, + 149, 0, 0, 150, 151, 152, 153, 1510, 1511, 156, + 0, 157, 158, 159, 160, 0, 0, 1512, 0, 1513, + 164, 165, 166, 167, 168, 1514, 170, 171, 172, 0, + 173, 174, 175, 176, 177, 178, 0, 1515, 180, 181, + 182, 183, 184, 185, 186, 187, 188, 189, 1516, 191, + 192, 1517, 194, 0, 195, 0, 196, 197, 198, 199, + 200, 201, 0, 0, 202, 203, 204, 205, 0, 0, + 206, 207, 1073, 209, 210, 0, 211, 212, 213, 0, + 1861, 215, 216, 0, 217, 218, 219, 220, 0, 222, + 223, 224, 225, 226, 227, 0, 0, 229, 0, 230, + 231, 1518, 233, 0, 234, 0, 235, 1519, 0, 1520, + 238, 239, 0, 1521, 242, 0, 243, 0, 0, 0, + 246, 247, 0, 248, 249, 250, 251, 252, 253, 254, + 1522, 256, 257, 258, 259, 0, 260, 261, 262, 263, + 264, 265, 266, 0, 267, 1523, 0, 270, 271, 272, + 273, 274, 1524, 1525, 0, 1526, 0, 278, 1527, 1528, + 281, 1529, 283, 284, 285, 286, 287, 288, 0, 0, + 289, 1530, 291, 1531, 0, 293, 294, 295, 296, 297, + 298, 299, 300, 1532, 302, 303, 304, 305, 306, 307, + 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, + 318, 319, 320, 321, 1533, 1534, 1535, 325, 326, 327, + 0, 0, 329, 330, 1536, 332, 0, 0, 334, 1537, + 336, 337, 338, 0, 339, 340, 0, 0, 341, 342, + 343, 0, 0, 344, 345, 0, 1538, 348, 1539, 0, + 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, + 361, 0, 0, 0, 0, 362, 363, 0, 1540, 366, + 367, 0, 369, 370, 371, 0, 372, 373, 374, 375, + 376, 377, 0, 378, 379, 380, 381, 382, 1541, 384, + 385, 386, 387, 0, 388, 389, 390, 391, 392, 393, + 394, 395, 396, 397, 398, 399, 400, 0, 401, 402, + 1542, 404, 405, 406, 1543, 408, 409, 410, 411, 412, + 413, 414, 415, 416, 417, 418, 419, 420, 0, 1544, + 421, 422, 423, 424, 425, 426, 1545, 428, 429, 0, + 1546, 431, 432, 1547, 434, 0, 435, 436, 437, 438, + 439, 440, 441, 442, 443, 444, 445, 446, 1548, 448, + 0, 0, 0, 450, 451, 0, 452, 1549, 454, 455, + 456, 457, 458, 0, 459, 1550, 1551, 0, 0, 462, + 463, 0, 465, 0, 0, 467, 468, 1552, 470, 471, + 472, 473, 474, 1553, 0, 475, 476, 477, 0, 478, + 479, 480, 481, 0, 482, 483, 484, 485, 486, 0, + 1554, 489, 0, 490, 1555, 492, 493, 494, 495, 496, + 497, 498, 0, 0, 499, 0, 0, 500, 501, 502, + 503, 504, 505, 3232, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 517, 518, 519, 520, 0, 0, + 0, 0, 118, 119, 120, 121, 122, 123, 124, 125, + 0, 126, 127, 128, 0, 0, 0, 2973, 0, 0, + 0, 0, 2974, 130, 131, 0, 132, 133, 134, 2975, + 136, 137, 138, 0, 1506, 2976, 1508, 1509, 0, 144, + 145, 146, 147, 148, 149, 0, 0, 150, 151, 152, + 153, 1510, 1511, 156, 0, 157, 158, 159, 160, 0, + 0, 2977, 0, 2978, 164, 165, 166, 167, 168, 2979, + 170, 171, 172, 0, 173, 174, 175, 176, 177, 178, + 0, 2980, 180, 181, 182, 183, 184, 185, 186, 187, + 188, 189, 1516, 191, 192, 1517, 194, 0, 195, 0, + 196, 197, 198, 199, 200, 201, 0, 0, 202, 203, + 204, 205, 0, 0, 206, 207, 1073, 209, 210, 0, + 211, 212, 213, 0, 214, 215, 216, 0, 217, 218, + 219, 220, 0, 222, 223, 224, 225, 226, 227, 0, + 0, 229, 0, 230, 231, 1518, 233, 0, 234, 0, + 235, 2981, 0, 2982, 238, 239, 2983, 2984, 242, 0, + 243, 0, 0, 0, 246, 247, 0, 248, 249, 250, + 251, 252, 253, 254, 2985, 256, 257, 258, 259, 0, + 260, 261, 262, 263, 264, 265, 266, 0, 267, 2986, + 0, 270, 271, 272, 273, 274, 1524, 1525, 0, 1526, + 0, 278, 2987, 2988, 281, 2989, 283, 284, 285, 286, + 287, 288, 0, 0, 289, 2990, 291, 2991, 0, 293, + 294, 295, 296, 297, 298, 299, 300, 3233, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, - 314, -1, -1, -1, -1, 319, 320, 321, 322, 323, - 324, 325, 326, 327, 328, -1, 330, 331, 332, 333, - 334, 335, -1, 337, 338, 339, 340, 341, 342, 343, - 344, 345, 346, -1, 348, 349, 350, 351, 352, 353, - 354, 355, 356, 357, 358, 359, 360, -1, 362, 363, - 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, - 374, 375, 376, 377, 378, 379, 380, 381, -1, -1, - 384, 385, 386, 387, 388, 389, 390, 391, 392, -1, - 394, 395, 396, 397, 398, -1, 400, 401, 402, 403, - 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, - 414, -1, -1, 417, 418, -1, 420, 421, 422, 423, - 424, 425, 426, -1, 428, 429, 430, -1, -1, 433, - 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, - 444, 445, 446, -1, -1, 449, 450, 451, -1, 453, - 454, 455, 456, -1, 458, 459, 460, 461, 462, 463, - 464, 465, -1, 467, 468, 469, 470, 471, 472, 473, - 474, 475, -1, -1, 478, -1, -1, 481, 482, 483, - 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, - 494, 495, 496, 497, 498, 499, 500, 501, -1, -1, + 314, 315, 316, 317, 318, 319, 320, 321, 1533, 2993, + 1535, 325, 326, 327, 0, 0, 329, 330, 2995, 332, + 0, 0, 334, 1537, 336, 337, 338, 0, 339, 340, + 0, 0, 341, 342, 343, 0, 0, 344, 345, 0, + 2997, 348, 2998, 0, 351, 352, 353, 354, 355, 356, + 357, 358, 359, 360, 361, 0, 0, 0, 0, 362, + 363, 0, 2999, 366, 367, 0, 369, 370, 371, 0, + 372, 373, 374, 375, 376, 377, 0, 378, 379, 380, + 381, 382, 1541, 384, 385, 386, 387, 0, 388, 389, + 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, + 400, 0, 401, 402, 3000, 404, 405, 406, 0, 408, + 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, + 419, 420, 0, 3001, 421, 422, 423, 424, 425, 426, + 0, 428, 429, 0, 3003, 431, 432, 1547, 434, 0, + 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, + 445, 446, 3234, 448, 0, 0, 0, 450, 451, 0, + 452, 3005, 454, 455, 456, 457, 458, 0, 459, 1550, + 1551, 0, 0, 462, 463, 0, 465, 0, 0, 467, + 468, 3006, 470, 471, 472, 473, 474, 0, 0, 475, + 476, 477, 0, 478, 479, 480, 481, 0, 482, 483, + 484, 485, 486, 0, 1554, 489, 0, 490, 3008, 492, + 493, 494, 495, 496, 497, 498, 0, 0, 499, 0, + 0, 500, 501, 502, 503, 504, 505, 528, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 517, 518, + 519, 520, 0, 0, 0, 0, 118, 119, 120, 121, + 122, 123, 124, 125, 0, 126, 127, 128, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 130, 131, 0, + 132, 133, 134, 0, 136, 137, 138, 139, 140, 0, + 142, 143, 0, 144, 145, 146, 147, 148, 149, 0, + 0, 150, 151, 152, 153, 154, 155, 156, 0, 157, + 158, 159, 160, 161, 0, 0, 0, 163, 164, 165, + 166, 167, 168, 0, 170, 171, 172, 0, 173, 174, + 175, 176, 177, 178, 0, 0, 180, 181, 182, 183, + 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, + 194, 0, 195, 0, 196, 197, 198, 199, 200, 201, + 0, 0, 202, 203, 204, 205, 0, 0, 206, 207, + 208, 209, 210, 0, 211, 212, 213, 0, 214, 215, + 216, 0, 217, 218, 219, 220, 221, 222, 223, 224, + 225, 226, 227, 228, 0, 229, 0, 230, 231, 232, + 233, 0, 234, 0, 235, 0, 0, 0, 238, 239, + 529, 0, 242, 0, 243, 0, 244, 245, 0, 247, + 0, 248, 249, 250, 251, 252, 253, 254, 0, 256, + 257, 258, 259, 0, 260, 261, 262, 263, 264, 265, + 266, 0, 267, 0, 269, 270, 271, 272, 273, 274, + 275, 276, 0, 277, 0, 278, 0, 0, 281, 0, + 283, 284, 285, 286, 287, 288, 0, 0, 289, 0, + 291, 0, 0, 293, 294, 295, 296, 297, 298, 299, + 300, 530, 302, 303, 304, 305, 306, 307, 308, 309, + 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, + 320, 321, 322, 0, 324, 325, 326, 327, 328, 0, + 329, 330, 0, 332, 0, 333, 334, 335, 336, 337, + 338, 0, 339, 340, 0, 0, 341, 342, 343, 0, + 0, 344, 345, 346, 0, 348, 0, 350, 351, 352, + 353, 354, 355, 356, 0, 358, 359, 360, 361, 0, + 0, 0, 0, 362, 363, 364, 0, 366, 367, 368, + 369, 370, 371, 0, 372, 373, 374, 375, 376, 377, + 0, 378, 379, 380, 0, 382, 383, 384, 385, 386, + 387, 0, 388, 389, 390, 391, 392, 393, 394, 395, + 396, 397, 398, 399, 400, 0, 401, 402, 0, 404, + 405, 406, 407, 0, 409, 410, 411, 412, 413, 414, + 415, 416, 417, 418, 419, 420, 0, 0, 421, 422, + 423, 424, 425, 426, 427, 428, 429, 0, 0, 431, + 432, 433, 434, 0, 435, 436, 437, 438, 439, 440, + 441, 442, 443, 444, 445, 446, 531, 448, 449, 0, + 0, 450, 451, 0, 452, 0, 454, 455, 456, 457, + 458, 0, 459, 460, 461, 0, 0, 462, 463, 464, + 465, 466, 0, 467, 468, 469, 470, 471, 472, 473, + 474, 0, 0, 475, 476, 477, 0, 478, 479, 480, + 481, 0, 482, 483, 484, 485, 486, 487, 488, 489, + 0, 490, 0, 492, 493, 494, 495, 496, 497, 498, + 0, 0, 499, 0, 0, 500, 501, 502, 503, 504, + 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, + 515, 516, 517, 518, 519, 520, 1797, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 118, 119, 120, 121, 122, + 123, 124, 125, 0, 126, 127, 128, 0, 0, 0, + 1503, 0, 0, 0, 0, 1504, 130, 131, 0, 132, + 133, 134, 1505, 136, 137, 138, 0, 1506, 1507, 1508, + 1509, 0, 144, 145, 146, 147, 148, 149, 0, 0, + 150, 151, 152, 153, 1510, 1511, 156, 0, 157, 158, + 159, 160, 0, 0, 1512, 0, 1513, 164, 165, 166, + 167, 168, 1514, 170, 171, 172, 0, 173, 174, 175, + 176, 177, 178, 0, 1515, 180, 181, 182, 183, 184, + 185, 186, 187, 188, 189, 1516, 191, 192, 1517, 194, + 0, 195, 0, 196, 197, 198, 199, 200, 201, 0, + 0, 202, 203, 204, 205, 0, 0, 206, 207, 1073, + 209, 210, 0, 211, 212, 213, 0, 214, 215, 216, + 0, 217, 218, 219, 220, 0, 222, 223, 224, 225, + 226, 227, 0, 0, 229, 0, 230, 231, 1518, 233, + 0, 234, 0, 235, 1519, 0, 1520, 238, 239, 0, + 1521, 242, 0, 243, 0, 0, 0, 246, 247, 0, + 248, 249, 250, 251, 252, 253, 254, 1522, 256, 257, + 258, 259, 0, 260, 261, 262, 263, 264, 265, 266, + 0, 267, 1523, 0, 270, 271, 272, 273, 274, 1524, + 1525, 0, 1526, 0, 278, 1527, 1528, 281, 1529, 283, + 284, 285, 286, 287, 288, 0, 0, 289, 1530, 291, + 1531, 0, 293, 294, 295, 296, 297, 298, 299, 300, + 0, 302, 303, 304, 305, 306, 307, 308, 309, 310, + 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, + 321, 1533, 1534, 1535, 325, 326, 327, 0, 0, 329, + 330, 1536, 332, 0, 0, 334, 1537, 336, 337, 338, + 0, 339, 340, 0, 0, 341, 342, 343, 0, 0, + 344, 345, 0, 1538, 348, 1539, 0, 351, 352, 353, + 354, 355, 356, 357, 358, 359, 360, 361, 0, 0, + 0, 0, 362, 363, 0, 1540, 366, 367, 0, 369, + 370, 371, 0, 372, 373, 374, 375, 376, 377, 0, + 378, 379, 380, 381, 382, 1541, 384, 385, 386, 387, + 0, 388, 389, 390, 391, 392, 393, 394, 395, 396, + 397, 398, 399, 400, 0, 401, 402, 1542, 404, 405, + 406, 0, 408, 409, 410, 411, 412, 413, 414, 415, + 416, 417, 418, 419, 420, 0, 1544, 421, 422, 423, + 424, 425, 426, 0, 428, 429, 0, 1546, 431, 432, + 1547, 434, 0, 435, 436, 437, 438, 439, 440, 441, + 442, 443, 444, 445, 446, 0, 448, 0, 0, 0, + 450, 451, 0, 452, 1549, 454, 455, 456, 457, 458, + 0, 459, 1550, 1551, 0, 0, 462, 463, 0, 465, + 0, 0, 467, 468, 1552, 470, 471, 472, 473, 474, + 0, 0, 475, 476, 477, 0, 478, 479, 480, 481, + 0, 482, 483, 484, 485, 486, 0, 1554, 489, 0, + 490, 1555, 492, 493, 494, 495, 496, 497, 498, 0, + 1, 499, 0, 0, 500, 501, 502, 503, 504, 505, + 2, 0, 3, 4, 0, 0, 0, 0, 1, 0, + 0, 517, 518, 519, 520, 0, 0, 0, 2, 0, + 6, 0, 0, 0, 0, 0, 0, 0, 0, 7, + 0, 0, 0, 0, 0, 0, 0, 0, 6, 0, + 0, 0, 0, 8, 0, 0, 0, 7, 0, 0, + 0, 0, 0, 0, 10, 0, 0, 0, 0, 0, + 0, 8, 0, 0, 0, 0, 11, 0, 751, 0, + 0, 0, 10, 0, 0, 0, 0, 0, 0, 13, + 0, 0, 0, 0, 11, 0, 751, 0, 0, 0, + 0, 0, 0, 0, 14, 15, 0, 13, 0, 0, + 0, 0, 0, 0, 0, 752, 0, 0, 0, 0, + 0, 18, 14, 15, 0, 0, 0, 0, 0, 19, + 0, 0, 0, 752, 0, 0, 0, 0, 0, 18, + 0, 0, 0, 0, 0, 0, 22, 19, 0, 0, + 23, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 22, 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, -1468, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + -1468, 0, 0, 0, 0, 0, 0, 0, 25, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 25, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 26, 27, 28, 0, 0, 0, 0, + 0, 29, 0, 0, 30, 0, 0, 0, 0, 0, + 0, 26, 27, 28, 0, 0, 0, 0, 0, 29, + 0, 0, 30, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 31, 0, 0, 0, 0, + 0, 0, 0, 0, 32, 0, 0, 0, 0, 0, + 0, 0, 0, 31, 0, 0, 0, 0, 0, 0, + 33, 0, 32, 0, 0, 0, 0, 34, 0, 0, + 0, 35, 0, 0, 0, 0, 0, 0, 33, 0, + 0, 36, 0, 0, 0, 34, 0, 0, 0, 35, + 0, 0, 0, 37, 0, 0, 0, 38, 0, 36, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 37, 0, 0, 0, 38, 0, 39, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 40, 0, 0, 0, 0, 39, 42, 0, 0, 0, + 0, 43, 0, 0, 0, 0, 753, 0, 40, 0, + 0, 0, 0, 0, 42, 0, 0, 0, 44, 43, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 44, 0, 0, 0, + 0, 0, 45, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 754, 0, 0, 0, + 45, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 46 +}; + +static const yytype_int16 yycheck[] = +{ + 7, 521, 0, 0, 0, 0, 841, 0, 903, 16, + 0, 0, 73, 930, 888, 815, 23, 0, 999, 746, + 1459, 914, 0, 0, 16, 38, 46, 0, 865, 1244, + 1175, 1256, 7, 1443, 754, 1242, 1045, 20, 980, 1230, + 20, 1683, 20, 965, 1720, 1217, 935, 1495, 23, 990, + 1093, 1612, 77, 1600, 990, 7, 1574, 1321, 990, 77, + 1828, 2219, 1219, 990, 37, 1655, 2209, 1210, 75, 76, + 1298, 23, 2188, 969, 2190, 1222, 980, 13, 2278, 1636, + 1637, 2027, 2365, 19, 0, 0, 2677, 1346, 0, 0, + 1247, 23, 17, 0, 30, 903, 2677, 905, 111, 907, + 75, 76, 0, 2208, 0, 1140, 45, 0, 44, 45, + 1145, 2714, 0, 2154, 2732, 1008, 0, 2326, 2327, 2328, + 1101, 753, 0, 75, 76, 34, 0, 810, 101, 2739, + 754, 2716, 2274, 816, 2544, 2345, 2631, 0, 747, 0, + 2635, 0, 0, 75, 76, 2028, 0, 1687, 0, 0, + 0, 988, 0, 0, 1067, 1068, 5, 1655, 1848, 0, + 1851, 3, 4, 5, 13, 14, 5, 9, 0, 1740, + 1738, 1084, 0, 109, 1965, 1847, 9, 4, 0, 5, + 40, 5, 9, 10, 55, 2846, 63, 13, 14, 13, + 14, 991, 3061, 75, 76, 5, 5, 5, 13, 14, + 778, 5, 2353, 13, 14, 13, 14, 5, 5, 1151, + 3047, 9, 5, 5, 5, 172, 9, 2351, 5, 5, + 5, 2357, 2357, 4, 2366, 80, 26, 3064, 9, 5, + 74, 45, 5, 23, 74, 5, 5, 3, 173, 5, + 45, 13, 14, 124, 119, 5, 122, 30, 11, 11, + 30, 172, 860, 16, 16, 38, 1265, 63, 38, 139, + 980, 883, 997, 1100, 1157, 1274, 11, 1184, 100, 172, + 15, 16, 100, 191, 63, 117, 9, 117, 2420, 2421, + 181, 2423, 30, 4, 46, 75, 76, 807, 9, 1231, + 38, 245, 1234, 1235, 107, 2901, 296, 3237, 1993, 1994, + 1995, 172, 2490, 290, 5, 291, 11, 883, 90, 992, + 15, 16, 288, 1458, 245, 0, 172, 3017, 80, 8, + 184, 1004, 11, 805, 193, 169, 15, 16, 2001, 2002, + 19, 20, 21, 63, 854, 20, 3, 137, 23, 2012, + 104, 46, 368, 2016, 2882, 291, 2884, 129, 3369, 107, + 1495, 983, 37, 82, 1545, 82, 2472, 132, 193, 245, + 2593, 46, 2595, 276, 93, 117, 93, 34, 35, 296, + 1205, 1206, 1209, 119, 2647, 80, 1640, 219, 53, 279, + 313, 40, 3432, 41, 64, 2594, 122, 107, 166, 120, + 75, 76, 77, 30, 74, 120, 3475, 11, 382, 241, + 11, 137, 83, 391, 1071, 148, 108, 149, 40, 2177, + 164, 3002, 315, 316, 317, 1332, 101, 181, 290, 373, + 1087, 1935, 3399, 122, 117, 433, 3263, 13, 14, 1303, + 122, 250, 46, 794, 507, 275, 369, 516, 108, 518, + 280, 3462, 373, 11, 3465, 518, 2646, 15, 16, 11, + 418, 812, 1966, 15, 16, 3058, 275, 200, 290, 201, + 132, 2619, 290, 30, 195, 30, 80, 148, 126, 80, + 195, 3056, 1361, 3523, 431, 483, 340, 231, 46, 382, + 2753, 3560, 3067, 360, 147, 329, 355, 373, 456, 329, + 192, 2532, 518, 162, 294, 132, 396, 451, 191, 3368, + 275, 2643, 177, 2645, 171, 369, 173, 347, 1551, 273, + 285, 75, 80, 1777, 213, 273, 419, 176, 85, 194, + 451, 213, 522, 358, 199, 2947, 308, 94, 280, 361, + 518, 518, 518, 361, 280, 3235, 1018, 3558, 522, 485, + 2101, 454, 518, 273, 176, 108, 324, 3524, 469, 452, + 507, 118, 3090, 2786, 360, 218, 457, 357, 3498, 359, + 463, 241, 237, 520, 518, 451, 539, 132, 518, 238, + 2160, 360, 2020, 1181, 3180, 431, 457, 2728, 454, 280, + 513, 167, 275, 518, 459, 1207, 593, 518, 1108, 389, + 1168, 2725, 328, 0, 3463, 522, 476, 1510, 1511, 1771, + 518, 593, 416, 292, 448, 1833, 419, 2154, 448, 2745, + 2745, 416, 1449, 285, 2802, 518, 399, 457, 1345, 399, + 556, 2763, 1535, 1350, 191, 3564, 2572, 3464, 1463, 1356, + 360, 1207, 518, 296, 3252, 2192, 1895, 204, 245, 2430, + 406, 407, 424, 1363, 214, 522, 3237, 518, 480, 1484, + 3311, 399, 480, 373, 1869, 2226, 3237, 2225, 419, 389, + 520, 516, 2160, 1927, 428, 520, 3605, 509, 510, 518, + 467, 2218, 2212, 2363, 521, 1939, 1685, 2368, 527, 518, + 521, 522, 1595, 1596, 517, 1910, 2358, 519, 527, 521, + 3185, 519, 518, 521, 518, 3190, 518, 524, 525, 521, + 1435, 1436, 431, 518, 431, 1969, 1441, 516, 518, 518, + 518, 520, 1976, 482, 518, 2925, 522, 513, 2918, 394, + 518, 518, 482, 3133, 520, 518, 518, 518, 509, 510, + 1362, 518, 518, 518, 754, 504, 1629, 1630, 1631, 1363, + 1577, 1578, 518, 1352, 504, 518, 518, 754, 518, 518, + 1587, 514, 514, 2017, 164, 454, 3374, 2021, 518, 480, + 359, 3044, 454, 409, 1601, 3375, 511, 512, 513, 514, + 753, 345, 3194, 1456, 754, 753, 509, 510, 2473, 2474, + 2475, 2476, 3367, 504, 447, 805, 2050, 794, 509, 510, + 389, 3213, 2952, 266, 2899, 1632, 173, 2025, 805, 812, + 2960, 468, 423, 178, 425, 812, 511, 512, 513, 514, + 384, 119, 748, 2486, 33, 162, 505, 506, 507, 794, + 509, 510, 511, 512, 513, 514, 472, 888, 203, 3038, + 805, 2777, 857, 1978, 841, 842, 513, 812, 405, 857, + 59, 408, 794, 520, 451, 419, 4, 860, 321, 203, + 1517, 9, 482, 805, 539, 916, 3459, 457, 865, 1801, + 812, 3166, 272, 3168, 2905, 878, 241, 521, 1877, 1811, + 1537, 507, 1814, 805, 504, 2020, 5, 875, 875, 875, + 875, 1023, 875, 863, 520, 875, 875, 1029, 3473, 4, + 275, 238, 875, 522, 9, 280, 470, 875, 875, 207, + 2490, 1796, 875, 3045, 1571, 912, 913, 3498, 245, 916, + 917, 518, 245, 3516, 480, 2861, 245, 3498, 518, 2178, + 295, 468, 106, 805, 2692, 1652, 2694, 866, 2811, 275, + 866, 2814, 309, 2816, 843, 844, 59, 846, 504, 848, + 287, 509, 510, 511, 512, 513, 514, 509, 510, 511, + 512, 513, 514, 1988, 339, 1829, 1830, 1831, 5, 875, + 875, 1769, 969, 875, 875, 273, 1855, 275, 875, 1911, + 3327, 1893, 3329, 980, 341, 1897, 3259, 875, 1900, 875, + 987, 988, 875, 3288, 178, 2532, 993, 875, 1796, 996, + 997, 875, 999, 1000, 1001, 1002, 3196, 875, 1018, 3584, + 983, 875, 2559, 132, 794, 983, 1902, 1911, 1816, 1016, + 935, 1018, 875, 1821, 875, 805, 875, 875, 395, 373, + 1027, 875, 812, 875, 875, 875, 518, 875, 517, 26, + 384, 160, 2471, 3176, 523, 32, 373, 1044, 1045, 1046, + 373, 1016, 2452, 1018, 373, 178, 3403, 241, 423, 172, + 425, 2194, 1027, 2196, 108, 189, 190, 259, 260, 1066, + 457, 1578, 40, 82, 1016, 419, 1018, 251, 753, 754, + 1587, 518, 25, 448, 93, 1027, 451, 261, 1085, 132, + 1807, 1101, 60, 2601, 1016, 1812, 1018, 2302, 82, 1096, + 1097, 1098, 4, 1100, 1101, 1027, 1103, 9, 1618, 93, + 516, 2329, 518, 2248, 520, 2873, 2370, 160, 241, 794, + 162, 1103, 355, 482, 451, 167, 470, 380, 451, 482, + 805, 518, 451, 3425, 3426, 259, 260, 812, 106, 1136, + 2677, 132, 380, 517, 1016, 504, 1018, 1974, 3084, 523, + 137, 504, 3342, 71, 72, 1027, 275, 1154, 1155, 518, + 480, 280, 482, 2310, 26, 518, 285, 516, 203, 160, + 32, 520, 115, 1188, 1189, 423, 1191, 425, 1181, 37, + 1188, 1189, 857, 1191, 516, 3477, 378, 379, 520, 373, + 516, 518, 252, 1190, 520, 518, 238, 1194, 1195, 518, + 875, 1911, 315, 316, 317, 436, 162, 1204, 1205, 1206, + 470, 167, 1209, 2184, 419, 1940, 1941, 1942, 1943, 1944, + 1945, 377, 2802, 1948, 1949, 1950, 1951, 1952, 1953, 1954, + 1955, 1956, 1957, 1230, 202, 2062, 1016, 280, 1018, 423, + 2377, 425, 285, 1246, 227, 287, 2383, 1027, 1174, 2284, + 8, 2286, 2506, 11, 378, 379, 519, 15, 16, 522, + 380, 19, 20, 21, 368, 369, 227, 451, 1265, 382, + 423, 518, 425, 8, 174, 137, 11, 1274, 368, 369, + 15, 16, 238, 251, 275, 368, 369, 2838, 46, 280, + 273, 13, 14, 261, 285, 53, 423, 518, 425, 345, + 423, 1298, 425, 13, 14, 273, 419, 294, 983, 172, + 516, 46, 273, 2140, 520, 173, 1918, 523, 53, 438, + 1922, 518, 80, 1925, 1321, 2189, 519, 167, 451, 522, + 449, 287, 1320, 1320, 1320, 1320, 518, 305, 384, 452, + 1337, 1016, 2780, 1018, 1028, 80, 246, 518, 1032, 1346, + 463, 209, 1027, 2488, 518, 1337, 1014, 2492, 26, 13, + 14, 1019, 1020, 1021, 32, 523, 1363, 225, 2905, 2281, + 357, 2283, 518, 419, 828, 829, 830, 235, 1036, 833, + 341, 519, 1040, 1380, 522, 518, 3576, 1062, 1385, 1362, + 2643, 359, 2645, 1363, 1362, 438, 511, 519, 1380, 1074, + 522, 1448, 389, 1450, 1451, 518, 449, 518, 82, 392, + 2135, 2136, 880, 3561, 882, 3563, 384, 519, 519, 177, + 522, 522, 3528, 2677, 470, 518, 1101, 1353, 2253, 1355, + 519, 392, 294, 522, 108, 403, 194, 3543, 1435, 1436, + 519, 199, 177, 522, 1441, 345, 1443, 438, 518, 2356, + 504, 1448, 1449, 1450, 1451, 2660, 3604, 518, 449, 194, + 843, 844, 2659, 846, 199, 848, 1463, 1464, 224, 137, + 501, 454, 520, 460, 290, 1472, 2691, 1474, 1443, 237, + 1477, 501, 2644, 147, 384, 1482, 519, 1484, 1485, 522, + 1487, 353, 3598, 454, 1491, 357, 519, 3603, 162, 522, + 174, 1443, 237, 167, 2537, 2538, 364, 1472, 171, 1474, + 522, 2708, 1477, 1188, 1189, 519, 1191, 1482, 522, 419, + 1485, 2658, 1487, 2660, 518, 383, 1491, 389, 172, 203, + 1472, 519, 1474, 519, 292, 1477, 522, 519, 519, 519, + 1482, 522, 522, 1485, 519, 1487, 519, 522, 1545, 1491, + 1472, 519, 1474, 519, 218, 1477, 522, 292, 13, 14, + 1482, 295, 3320, 1485, 3322, 1487, 13, 14, 519, 1491, + 470, 522, 246, 2544, 238, 13, 14, 59, 2405, 519, + 1577, 1578, 522, 2514, 2515, 2516, 13, 14, 2514, 1586, + 1587, 1574, 2514, 2515, 1574, 1574, 2513, 1594, 460, 518, + 1472, 1574, 1474, 420, 1601, 1477, 1574, 1574, 501, 519, + 1482, 1574, 522, 1485, 519, 1487, 224, 522, 152, 1491, + 353, 5, 519, 287, 519, 522, 294, 522, 13, 14, + 1627, 1628, 296, 152, 1685, 1632, 394, 519, 1635, 519, + 522, 152, 522, 1640, 1641, 1642, 1643, 1644, 1645, 1646, + 1647, 1648, 1649, 152, 26, 152, 1653, 1654, 1655, 394, + 32, 1658, 40, 1443, 419, 1662, 519, 1649, 1665, 1666, + 1667, 1668, 1669, 1670, 1671, 1672, 1673, 519, 40, 1676, + 522, 2398, 13, 14, 518, 353, 1683, 1362, 1685, 357, + 1655, 275, 1472, 470, 1474, 89, 2406, 1477, 3330, 373, + 3237, 519, 1482, 152, 522, 1485, 1703, 1487, 1723, 519, + 384, 1491, 522, 37, 2968, 1723, 13, 14, 484, 26, + 6, 389, 152, 519, 10, 32, 522, 2610, 520, 1726, + 519, 1701, 18, 522, 519, 519, 519, 522, 522, 522, + 1737, 1738, 126, 127, 502, 419, 32, 505, 506, 507, + 36, 509, 510, 511, 512, 513, 514, 2919, 290, 519, + 519, 2966, 522, 522, 152, 137, 152, 502, 442, 178, + 519, 368, 369, 522, 509, 510, 511, 512, 513, 514, + 1777, 355, 519, 447, 26, 522, 13, 14, 172, 1786, + 32, 1788, 460, 431, 203, 518, 470, 1472, 518, 1474, + 13, 14, 1477, 518, 1786, 519, 1788, 1482, 2633, 26, + 1485, 8, 1487, 13, 14, 32, 1491, 518, 15, 16, + 421, 3002, 19, 20, 21, 13, 14, 3042, 13, 14, + 137, 1828, 241, 147, 2698, 2742, 1833, 13, 14, 1836, + 1837, 2720, 13, 14, 2756, 788, 1772, 220, 162, 173, + 225, 2576, 2577, 167, 13, 14, 1782, 37, 1784, 300, + 3526, 1787, 42, 518, 3530, 13, 14, 1793, 225, 1795, + 13, 14, 225, 3127, 297, 2874, 518, 820, 40, 3279, + 1877, 236, 1808, 13, 14, 209, 295, 1813, 13, 14, + 518, 1817, 1818, 1819, 1820, 137, 1822, 1823, 1895, 1574, + 5, 225, 845, 5, 218, 1902, 1903, 13, 14, 518, + 1873, 235, 13, 14, 1911, 13, 14, 263, 264, 3585, + 137, 101, 294, 325, 238, 378, 379, 462, 463, 518, + 1927, 315, 316, 317, 1931, 1932, 518, 1934, 174, 2388, + 2389, 518, 1939, 1940, 1941, 1942, 1943, 1944, 1945, 5, + 893, 1948, 1949, 1950, 1951, 1952, 1953, 1954, 1955, 1956, + 1957, 3498, 3538, 3539, 373, 5, 1963, 1964, 3570, 3571, + 1967, 518, 1969, 287, 1154, 1155, 5, 1974, 518, 1976, + 1655, 353, 296, 3237, 5, 357, 9, 294, 2260, 2261, + 518, 518, 481, 173, 302, 104, 522, 522, 382, 519, + 220, 1998, 40, 167, 287, 285, 2003, 389, 2005, 393, + 246, 167, 2009, 59, 423, 236, 425, 389, 518, 431, + 2017, 93, 518, 431, 2021, 2957, 2023, 522, 2025, 209, + 2027, 415, 3432, 442, 59, 419, 431, 980, 2003, 448, + 364, 59, 451, 266, 2009, 225, 353, 990, 1723, 2774, + 357, 3248, 294, 2050, 3483, 235, 108, 2969, 2970, 383, + 431, 2003, 523, 519, 222, 2062, 2063, 2009, 452, 480, + 431, 431, 152, 100, 3474, 380, 275, 294, 199, 463, + 275, 2003, 389, 275, 518, 40, 275, 2009, 460, 269, + 2807, 275, 518, 152, 172, 292, 480, 13, 520, 519, + 519, 172, 519, 2100, 519, 519, 522, 2104, 518, 345, + 290, 353, 2109, 2110, 519, 357, 519, 225, 477, 519, + 504, 225, 282, 3523, 522, 282, 518, 518, 3099, 467, + 2140, 2003, 476, 447, 518, 315, 353, 2009, 2135, 2136, + 357, 520, 322, 2140, 518, 39, 9, 389, 384, 3364, + 37, 518, 518, 460, 518, 42, 429, 520, 429, 2156, + 518, 11, 2159, 2160, 2161, 178, 518, 1110, 3303, 518, + 517, 522, 389, 355, 528, 523, 172, 1120, 429, 522, + 2177, 2178, 518, 419, 364, 280, 1861, 2184, 431, 181, + 2187, 163, 172, 522, 519, 2160, 457, 266, 1873, 1142, + 522, 218, 516, 383, 40, 519, 520, 2204, 1151, 392, + 291, 227, 522, 313, 101, 2940, 313, 181, 460, 1046, + 2217, 2938, 2187, 2003, 60, 220, 522, 519, 241, 2009, + 151, 518, 275, 227, 470, 296, 227, 2234, 2235, 2204, + 147, 334, 470, 460, 3498, 2187, 288, 152, 518, 3, + 518, 172, 518, 152, 2251, 162, 2253, 152, 480, 152, + 167, 152, 2204, 522, 522, 2187, 40, 275, 8, 2266, + 106, 11, 452, 2199, 3, 15, 16, 457, 290, 19, + 20, 21, 2204, 290, 40, 11, 173, 2284, 2285, 2286, + 59, 172, 40, 167, 519, 519, 3501, 181, 167, 3, + 519, 314, 2284, 2285, 2286, 519, 518, 3214, 505, 506, + 507, 218, 509, 510, 511, 512, 513, 514, 1046, 315, + 316, 317, 209, 39, 1151, 518, 2323, 518, 2003, 3, + 516, 238, 2329, 520, 2009, 516, 501, 431, 225, 431, + 176, 431, 431, 517, 519, 522, 519, 519, 235, 980, + 528, 2361, 519, 519, 501, 353, 519, 148, 3083, 520, + 373, 501, 2350, 2350, 2350, 2350, 202, 380, 2365, 519, + 3080, 172, 518, 2370, 519, 519, 431, 518, 155, 518, + 287, 518, 269, 2365, 250, 518, 382, 40, 59, 296, + 477, 522, 507, 2390, 315, 316, 317, 454, 522, 291, + 503, 291, 2912, 1230, 244, 59, 266, 2187, 2405, 2406, + 423, 59, 425, 275, 152, 251, 469, 2414, 203, 518, + 431, 152, 152, 419, 2204, 261, 431, 431, 315, 431, + 431, 282, 2414, 282, 519, 322, 1379, 273, 451, 518, + 40, 518, 355, 519, 288, 290, 480, 522, 40, 3332, + 152, 280, 519, 527, 2380, 2452, 452, 172, 518, 199, + 518, 382, 3289, 59, 3291, 2140, 186, 463, 519, 305, + 519, 519, 167, 80, 519, 516, 3301, 364, 143, 172, + 519, 199, 222, 518, 480, 2160, 522, 2452, 519, 1120, + 522, 519, 8, 2490, 1321, 11, 383, 519, 419, 15, + 16, 2176, 1230, 19, 20, 21, 301, 522, 504, 2506, + 2452, 291, 2187, 523, 3304, 2518, 3306, 181, 3489, 518, + 1151, 518, 518, 359, 361, 152, 2523, 3434, 518, 2204, + 519, 452, 2529, 2530, 2544, 519, 2587, 522, 519, 176, + 447, 442, 463, 519, 519, 519, 519, 2544, 384, 520, + 518, 37, 292, 518, 86, 522, 42, 518, 3443, 480, + 3424, 40, 40, 2560, 40, 452, 2563, 403, 2565, 457, + 522, 172, 2582, 518, 199, 2572, 2573, 519, 519, 2576, + 2577, 151, 479, 504, 2581, 2582, 519, 517, 517, 290, + 522, 2588, 3417, 1321, 519, 519, 519, 518, 463, 519, + 1231, 507, 172, 1234, 1235, 59, 2603, 519, 519, 516, + 519, 519, 480, 520, 205, 101, 2613, 117, 2601, 40, + 518, 2601, 2601, 2633, 227, 7, 8, 88, 2601, 192, + 280, 13, 507, 2601, 2601, 280, 2633, 19, 2601, 431, + 520, 23, 520, 25, 2607, 74, 517, 29, 30, 31, + 520, 80, 34, 520, 40, 37, 38, 275, 431, 41, + 517, 520, 44, 45, 93, 520, 520, 520, 520, 107, + 480, 519, 2452, 520, 520, 419, 519, 2674, 520, 520, + 2677, 2678, 520, 2680, 518, 520, 2361, 173, 117, 520, + 119, 519, 2674, 75, 76, 2692, 2678, 2694, 2680, 520, + 520, 520, 520, 520, 520, 520, 222, 520, 520, 520, + 2636, 520, 520, 2639, 520, 520, 520, 290, 1545, 101, + 518, 518, 9, 209, 354, 518, 108, 109, 110, 111, + 112, 2719, 2719, 2719, 2719, 518, 522, 1368, 1369, 225, + 2666, 2751, 336, 522, 519, 315, 316, 317, 59, 235, + 1693, 519, 2715, 199, 3471, 2681, 2682, 2683, 2684, 2685, + 2686, 2687, 2688, 2689, 2690, 505, 506, 507, 517, 509, + 510, 511, 512, 513, 514, 522, 292, 2774, 207, 192, + 2777, 2744, 519, 269, 462, 91, 522, 26, 347, 2799, + 40, 519, 152, 32, 518, 520, 519, 2794, 2795, 124, + 152, 40, 2799, 40, 290, 2802, 519, 369, 369, 40, + 519, 518, 382, 1640, 40, 518, 522, 1545, 457, 518, + 310, 60, 1765, 1766, 518, 280, 249, 191, 457, 315, + 442, 518, 2829, 74, 293, 172, 322, 80, 74, 519, + 9, 371, 519, 518, 517, 59, 275, 519, 517, 419, + 133, 280, 2849, 93, 273, 507, 290, 442, 2855, 2856, + 40, 518, 293, 2860, 2861, 293, 205, 106, 2865, 2544, + 40, 2868, 2869, 519, 518, 462, 2873, 2874, 364, 519, + 2877, 1824, 452, 519, 2881, 2895, 3396, 290, 290, 122, + 60, 2888, 389, 463, 454, 1838, 1839, 383, 137, 519, + 329, 368, 148, 25, 36, 368, 298, 2582, 1794, 875, + 480, 2279, 1640, 2674, 2661, 3334, 2881, 2611, 347, 3474, + 3428, 3575, 2962, 1902, 2393, 852, 2601, 3449, 3553, 3207, + 3502, 3511, 2607, 3546, 504, 2932, 106, 3265, 1217, 2881, + 2285, 2272, 2733, 2940, 3500, 2653, 3509, 2269, 518, 2680, + 1777, 3497, 1345, 2388, 2349, 2389, 2414, 3080, 2633, 2881, + 2251, 1592, 2959, 202, 2710, 1174, 452, 304, 1911, 1762, + 2471, 2968, 2217, 1604, 1917, 1606, 1318, 3483, 315, 316, + 317, 1197, 1015, 1198, 2234, 1015, 1726, 3405, 3293, 505, + 506, 507, 1761, 509, 510, 511, 512, 513, 514, 1200, + 23, 2204, 2015, 1634, 117, 3002, 3122, 2452, 2451, 2881, + 2802, 2498, 251, 2939, 992, 3228, 2030, 2968, 3409, 448, + 990, 990, 261, 1911, 1911, 3408, 1911, 990, 457, 2111, + 990, 990, 202, 990, 273, 2530, 990, 990, 2064, 990, + 2715, 2218, 2160, 2850, 2113, 382, 1464, 3044, 2157, 1777, + 2556, 2852, 2888, 2601, 3394, 294, 789, 1839, 2023, 172, + 1363, 893, 3044, 2612, 1701, 2322, 305, 1702, -1, 2744, + -1, -1, -1, -1, -1, 3072, 2751, -1, -1, -1, + -1, 251, 419, 3080, 1254, -1, 3083, 3084, -1, 3099, + -1, 261, -1, -1, -1, -1, 3059, -1, -1, -1, + 1927, 2881, 3099, 273, -1, -1, 1737, 1738, 178, -1, + -1, -1, 1939, -1, 353, 452, -1, -1, 357, -1, + 359, -1, -1, -1, 2799, -1, 463, -1, -1, -1, + 3127, -1, -1, 203, -1, 305, 3133, -1, -1, -1, + -1, -1, 1969, 480, -1, 384, -1, -1, -1, 1976, + 389, -1, -1, 3150, 3151, -1, -1, 3154, 540, 3156, + -1, -1, -1, 545, 403, 8, 548, 504, 11, -1, + 1801, 241, 15, 16, 556, -1, 19, 20, 21, -1, + 1811, 518, -1, 1814, 3181, 8, -1, -1, 11, 359, + 2017, 304, 15, 16, 2021, -1, 19, 20, 21, 1927, + 2027, -1, 315, 316, 317, -1, 2881, -1, 3205, -1, + -1, 1939, -1, 36, 384, -1, -1, -1, -1, -1, + 2895, 460, -1, 2050, -1, 295, -1, -1, -1, -1, + -1, -1, -1, 403, -1, -1, -1, -1, -1, -1, + 3237, 1969, -1, -1, 314, -1, -1, -1, 1976, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 8, -1, 3259, 11, -1, -1, -1, 15, 16, 382, + -1, 19, 20, 21, -1, -1, -1, 3259, -1, -1, + 1911, -1, 3279, -1, -1, -1, -1, -1, 36, 2017, + 3216, 3254, 3289, 2021, 3291, -1, 3293, -1, -1, 2027, + 3297, -1, 3299, 373, 3301, -1, 419, -1, -1, -1, + 380, -1, 3238, 3239, 3279, -1, -1, -1, 3315, -1, + -1, -1, 2050, 3320, -1, 3322, -1, -1, -1, -1, + -1, -1, -1, 3330, -1, -1, 3262, 3279, -1, 452, + -1, -1, -1, -1, -1, -1, 3343, -1, 2291, -1, + 463, 3348, -1, 423, -1, 425, 199, -1, -1, -1, + -1, 3343, -1, -1, 746, 747, 748, 480, 3331, -1, + 3333, -1, 442, -1, -1, -1, -1, -1, 448, 222, + -1, 451, -1, -1, 3059, -1, -1, -1, -1, -1, + -1, 504, -1, -1, -1, -1, -1, -1, 3395, 222, + 2343, -1, -1, 2034, -1, 518, 788, 789, 3405, -1, + 3373, -1, 794, -1, 796, -1, -1, -1, 2361, -1, + 3417, -1, -1, 805, 3099, -1, 3389, 809, 810, -1, + 812, -1, -1, 815, 816, 3432, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 828, 829, 830, 292, + -1, 833, -1, 3450, -1, -1, -1, -1, -1, 841, + 842, 843, 844, 2406, 846, -1, 848, 3432, -1, 292, + -1, -1, -1, 2416, 222, 2418, -1, 3474, 860, 2422, + -1, 2424, -1, -1, 866, -1, -1, -1, -1, -1, + 3432, -1, 3489, -1, -1, -1, 878, -1, -1, 3279, + 98, 3498, -1, 3500, -1, -1, -1, -1, -1, 3474, + 892, 893, -1, -1, -1, -1, -1, -1, 3500, -1, + -1, -1, -1, -1, -1, -1, 3523, -1, 126, 127, + -1, -1, 3474, -1, -1, -1, -1, -1, -1, 997, + 3537, 3538, 3539, 2370, 292, 927, 928, -1, -1, -1, + -1, -1, 3515, -1, -1, -1, -1, 939, 3523, -1, + 2191, 943, 944, 945, 946, -1, -1, 3564, 3494, -1, + -1, -1, -1, -1, 172, -1, -1, 959, 3541, 3254, + -1, 3523, -1, -1, 37, -1, -1, -1, -1, 42, + -1, -1, -1, 2224, 2225, -1, -1, -1, -1, -1, + 3275, -1, -1, -1, -1, -1, -1, -1, 3605, 991, + 992, -1, 994, -1, -1, 997, -1, -1, -1, -1, + -1, 1003, 1004, -1, -1, -1, -1, -1, 1010, -1, + -1, -1, -1, -1, 1016, -1, 1018, -1, -1, 0, + -1, -1, 2370, -1, -1, 1027, -1, -1, 101, -1, + -1, -1, 3432, -1, -1, 1037, 3331, -1, 3333, -1, + -1, -1, 505, 506, 507, -1, 509, 510, 511, 512, + 513, 514, 1054, -1, -1, -1, -1, -1, -1, 2506, + -1, -1, 505, 506, 507, -1, 509, 510, 511, 512, + 513, 514, -1, -1, 3474, -1, -1, -1, 3373, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, 1046, -1, -1, 3389, -1, 1046, 315, 316, 317, + 173, -1, -1, 1105, -1, -1, -1, -1, 181, -1, + -1, -1, -1, -1, 2677, -1, -1, 1195, -1, 100, + -1, -1, -1, 3523, -1, 2572, 1204, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 209, 505, 506, 507, + -1, 509, 510, 511, 512, 513, 514, 2710, -1, -1, + -1, -1, 225, -1, -1, -1, 1158, -1, 2506, -1, + -1, 55, 235, -1, 382, -1, 147, -1, 1046, -1, + -1, -1, 1174, 1175, -1, 393, -1, -1, -1, 1181, + -1, 162, -1, -1, -1, -1, 167, -1, -1, -1, + -1, 172, -1, -1, -1, -1, 269, 415, -1, -1, + 181, 419, 1204, 1205, 1206, 186, -1, -1, 102, -1, + -1, -1, -1, -1, 1216, 1217, -1, 290, -1, -1, + 3515, 439, -1, -1, 2572, -1, -1, 1229, 8, 123, + 2677, 11, -1, -1, 452, 15, 16, 218, -1, 19, + 20, 21, 315, -1, 1246, 463, 3541, 141, 1250, 322, + -1, 145, -1, 1255, -1, -1, 36, 238, -1, 2510, + 2511, -1, 480, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 168, 1230, -1, 171, -1, -1, + 1230, -1, -1, -1, -1, -1, 504, -1, 0, 1046, + -1, 364, -1, 187, -1, -1, -1, -1, -1, -1, + 518, -1, 1046, -1, -1, -1, 287, -1, -1, 290, + 383, -1, 1314, -1, 1316, 296, -1, -1, -1, -1, + -1, -1, 2885, 1325, -1, -1, -1, -1, -1, 2677, + 2777, 37, -1, -1, 1336, 41, -1, -1, -1, -1, + -1, -1, -1, 1345, -1, -1, -1, -1, 1350, -1, + 1352, 1353, 1230, 1355, 1356, 336, -1, 1435, 1436, -1, + -1, -1, -1, 1441, -1, -1, 1321, -1, -1, -1, + -1, 1321, -1, -1, -1, -1, -1, -1, -1, 452, + 361, -1, -1, -1, 457, -1, 280, -1, 100, -1, + -1, -1, -1, -1, 288, 101, -1, -1, -1, -1, + -1, -1, 108, -1, 110, -1, 112, -1, -1, -1, + -1, -1, -1, -1, 2861, -1, 310, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 2677, -1, -1, 2777, + -1, -1, -1, 1435, 1436, 147, -1, -1, 419, 1441, + -1, 1443, 222, 1321, -1, 339, -1, -1, -1, -1, + 162, -1, -1, -1, 1456, 167, 1458, 1459, -1, -1, + 172, 1463, 1464, -1, 1466, -1, 447, -1, -1, 181, + 1472, -1, 1474, 1230, 186, 1477, 457, -1, -1, -1, + 1482, -1, 1484, 1485, -1, 1487, 1230, -1, -1, 1491, + 3053, 1493, -1, 1495, -1, -1, 477, -1, 479, 480, + -1, -1, -1, -1, -1, -1, 218, -1, -1, -1, + 13, -1, 292, 2861, -1, -1, 19, 3080, -1, -1, + 23, 2968, -1, -1, -1, -1, 238, 30, -1, -1, + -1, -1, -1, -1, -1, 516, -1, -1, 519, 520, + 521, 44, 45, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 3002, -1, -1, -1, -1, + -1, 2812, -1, -1, 1321, -1, -1, -1, -1, -1, + -1, -1, 75, 76, -1, 287, -1, 1321, 290, -1, + -1, -1, -1, -1, 296, -1, -1, -1, -1, -1, + 1545, -1, -1, -1, -1, 1545, -1, -1, 1600, -1, + -1, -1, -1, -1, 3167, -1, 109, -1, -1, -1, + 1612, -1, -1, -1, 8, -1, -1, 11, -1, -1, + 2968, 15, 16, -1, 336, 19, 20, 21, -1, -1, + -1, -1, -1, -1, -1, -1, -1, 3084, -1, -1, + -1, -1, 36, -1, -1, -1, -1, -1, 1726, 361, + 1652, -1, -1, 1655, 3002, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, 1545, -1, -1, + -1, -1, -1, -1, 3237, -1, -1, -1, -1, -1, + 3127, 1683, -1, -1, -1, 1640, -1, -1, -1, -1, + 1640, -1, -1, -1, -1, -1, 1698, -1, 1700, -1, + 1702, -1, -1, -1, -1, -1, 2957, 419, -1, -1, + 1712, 2962, 1714, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 1726, 505, 506, 507, -1, 509, + 510, 511, 512, 513, 514, 447, 3084, -1, -1, -1, + -1, -1, -1, -1, -1, 457, -1, 0, -1, 1751, + -1, 1753, -1, -1, -1, -1, -1, -1, 3009, 3010, + -1, -1, 1640, 1765, 1766, 477, -1, 479, 480, 1771, + 1772, -1, -1, -1, -1, -1, -1, -1, -1, 3127, + 1782, 1783, 1784, 1785, -1, 1787, -1, -1, 1545, -1, + 3237, 1793, -1, 1795, -1, -1, -1, -1, -1, -1, + -1, 1545, 3365, -1, 516, 1807, 1808, 519, 520, 521, + 1812, 1813, -1, -1, -1, 1817, 1818, 1819, 1820, -1, + 1822, 1823, 1777, -1, -1, -1, -1, 1777, 222, -1, + -1, -1, -1, -1, 540, -1, -1, -1, 1840, 545, + -1, -1, 548, -1, -1, -1, 1848, 100, 1850, 1851, + 1852, 1853, 1854, -1, -1, -1, -1, -1, -1, -1, + -1, -1, 1940, 1941, 1942, 1943, 1944, 1945, -1, 1871, + 1948, 1949, 1950, 1951, 1952, 1953, 1954, 1955, 1956, 1957, + -1, -1, -1, 1640, -1, -1, -1, -1, 1890, 3237, + -1, -1, -1, -1, 147, -1, 1640, -1, 292, 1777, + 8, -1, -1, 11, -1, -1, -1, 15, 16, 162, + -1, 19, 20, 21, 167, -1, -1, -1, -1, 172, + -1, -1, -1, -1, -1, -1, -1, -1, 181, -1, + -1, -1, -1, 186, -1, 3498, -1, -1, 1940, 1941, + 1942, 1943, 1944, 1945, -1, -1, 1948, 1949, 1950, 1951, + 1952, 1953, 1954, 1955, 1956, 1957, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 218, -1, -1, -1, -1, + -1, -1, 1927, 3224, 3225, -1, 1978, 1927, -1, -1, + -1, -1, -1, -1, 1939, 238, 3237, -1, -1, 1939, + 1992, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, 2003, -1, -1, -1, -1, -1, 2009, -1, -1, + -1, -1, -1, 2015, 1969, -1, -1, -1, 2020, 1969, + 1777, 1976, -1, -1, -1, -1, 1976, 2029, 2030, -1, + -1, -1, -1, 1777, 287, -1, -1, 290, -1, -1, + -1, -1, -1, 296, -1, -1, -1, -1, -1, 1927, + -1, 3498, -1, 556, -1, -1, -1, 2135, 2136, -1, + -1, 1939, 2017, -1, -1, -1, 2021, 2017, -1, -1, + -1, 2021, 2027, -1, -1, -1, -1, 2027, -1, -1, + -1, -1, -1, 336, -1, 8, -1, -1, 11, -1, + 796, 1969, 15, 16, -1, 2050, -1, -1, 1976, 2101, + 2050, -1, -1, -1, 2106, -1, -1, -1, 361, 2111, + -1, 505, 506, 507, 222, 509, 510, 511, 512, 513, + 514, -1, -1, 46, -1, -1, -1, -1, -1, -1, + 53, -1, -1, 2135, 2136, -1, -1, -1, -1, 2017, + -1, -1, -1, 2021, -1, -1, -1, -1, -1, 2027, + 3498, -1, 2154, -1, -1, -1, -1, 80, 2160, -1, + -1, -1, -1, -1, -1, -1, 419, -1, 126, 127, + 1927, -1, 2050, 2251, -1, -1, -1, -1, -1, -1, + -1, -1, 1939, 1927, 292, 2187, 892, -1, -1, -1, + -1, -1, -1, -1, 447, 1939, -1, 2199, -1, -1, + -1, -1, 2204, -1, 457, -1, 2208, -1, -1, -1, + -1, -1, 1969, -1, 172, -1, -1, -1, -1, 1976, + -1, 927, 145, -1, 477, 1969, 479, 480, -1, -1, + -1, -1, 1976, -1, -1, -1, -1, 943, 944, 945, + 946, -1, -1, -1, 747, 748, 2248, 3498, -1, 2251, + -1, 2253, 2254, -1, 177, -1, -1, -1, -1, -1, + 2017, -1, -1, 516, 2021, -1, 519, 520, 521, -1, + 2027, 194, 2274, 2017, -1, -1, 199, 2021, -1, -1, + -1, -1, -1, 2027, -1, -1, -1, -1, 994, -1, + -1, -1, -1, 2050, -1, -1, -1, -1, -1, -1, + -1, -1, 805, -1, -1, -1, 2050, -1, -1, -1, + -1, -1, -1, -1, 237, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, 2345, -1, -1, -1, -1, -1, -1, + 2352, -1, -1, -1, -1, -1, -1, 315, 316, 317, + -1, 2363, -1, 866, 2366, 2367, 2368, 2369, -1, 292, + -1, -1, -1, -1, -1, -1, -1, -1, 2380, -1, + 2382, -1, -1, 2385, -1, -1, -1, -1, -1, -1, + 2392, -1, -1, -1, -1, -1, 2398, 505, 506, 507, + -1, 509, 510, 511, 512, 513, 514, -1, -1, -1, + -1, -1, -1, -1, -1, 2370, -1, -1, 2420, 2421, + 2370, 2423, -1, -1, 382, 8, -1, -1, 11, -1, + -1, -1, 15, 16, -1, 393, -1, -1, -1, -1, + -1, -1, -1, -1, 997, -1, -1, -1, -1, -1, + 2452, -1, -1, -1, -1, -1, -1, 415, -1, -1, + -1, 419, -1, 46, -1, -1, -1, -1, 2470, -1, + 53, 394, -1, -1, -1, -1, 2478, 2479, 2480, -1, + -1, -1, -1, -1, -1, -1, 2488, -1, 2490, -1, + 2492, -1, 2370, -1, 452, -1, 2498, 80, 2576, 2577, + -1, -1, -1, -1, -1, 463, -1, 1010, -1, -1, + 1216, -1, -1, 1016, -1, 1018, 2518, -1, -1, -1, + -1, -1, 480, 1229, 1027, -1, -1, -1, -1, -1, + 2532, -1, -1, -1, 1037, -1, -1, -1, -1, -1, + -1, 2543, -1, -1, 1250, 2547, 504, -1, -1, -1, + -1, 2506, -1, -1, -1, -1, 2506, -1, -1, -1, + 518, -1, 145, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 2576, 2577, -1, -1, -1, 502, + -1, -1, -1, -1, -1, -1, 509, 510, 511, 512, + 513, 514, -1, -1, 177, -1, -1, -1, -1, -1, + -1, -1, 1105, 2605, -1, -1, -1, -1, -1, 2611, + 1316, 194, -1, 2370, -1, -1, 199, 2572, -1, 1325, + -1, -1, 2572, -1, -1, 2627, 2370, -1, 2506, 2631, + -1, 2633, -1, 2635, 2636, -1, -1, 2639, -1, -1, + -1, 2643, 2644, 2645, -1, 2647, -1, -1, -1, -1, + -1, 1204, -1, -1, 237, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 2666, -1, 2668, -1, -1, -1, + -1, 1174, 1175, -1, -1, -1, -1, -1, -1, 2681, + 2682, 2683, 2684, 2685, 2686, 2687, 2688, 2689, 2690, -1, + -1, -1, -1, -1, 2572, -1, 2774, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 292, + -1, -1, 2714, -1, -1, -1, -1, -1, -1, 2721, + -1, 2799, 2677, -1, -1, -1, -1, 2677, -1, -1, + -1, 2733, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 2506, + -1, 2753, -1, -1, -1, -1, -1, -1, -1, -1, + 1466, 2763, 2506, -1, -1, -1, -1, -1, -1, -1, + -1, 2849, 2774, -1, -1, -1, -1, -1, 2780, -1, + -1, -1, -1, -1, -1, 2787, 2788, 2789, 2790, 40, + -1, -1, -1, -1, -1, -1, -1, 2799, -1, 2677, + 2802, -1, -1, -1, 2806, 2807, -1, -1, -1, 60, + -1, 394, -1, 2815, -1, 2572, -1, -1, -1, -1, + -1, -1, 2777, -1, -1, -1, -1, 2777, 2572, -1, + -1, -1, -1, -1, -1, -1, 2838, -1, -1, -1, + -1, -1, -1, 2845, 2846, -1, -1, -1, 2850, 1352, + 1353, -1, 1355, -1, -1, 106, 107, -1, -1, -1, + -1, -1, 2940, -1, -1, -1, 117, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, 2879, -1, 2881, + -1, -1, 1435, 1436, -1, -1, 2888, -1, 1441, -1, + -1, -1, -1, 2895, -1, -1, -1, 2899, -1, 2777, + -1, -1, -1, 2905, -1, -1, 2861, -1, -1, -1, + -1, 2861, -1, -1, -1, -1, -1, 2919, -1, 502, + 2677, -1, -1, 2925, -1, 176, 509, 510, 511, 512, + 513, 514, -1, 2677, -1, -1, 2938, 2939, 2940, -1, + -1, -1, -1, -1, 2946, -1, -1, -1, -1, -1, + -1, 202, -1, -1, -1, 1458, -1, -1, -1, -1, + -1, 2963, -1, -1, -1, -1, -1, -1, -1, 1472, + -1, 1474, -1, -1, 1477, -1, -1, -1, -1, 1482, + -1, -1, 1485, 2861, 1487, -1, -1, -1, 1491, -1, + 1493, -1, 1495, -1, 1700, -1, 1702, -1, -1, -1, + 251, -1, -1, -1, -1, 3083, 1712, -1, -1, -1, + 261, -1, -1, 2968, -1, -1, -1, -1, 2968, -1, + 2777, -1, 273, -1, 275, -1, -1, -1, -1, -1, + -1, -1, -1, 2777, -1, -1, -1, -1, -1, 3041, + -1, -1, -1, 3045, -1, 1751, -1, 3002, -1, -1, + -1, -1, 3002, -1, 305, -1, 3058, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 3076, -1, -1, -1, -1, -1, + -1, 3083, -1, -1, -1, -1, -1, -1, -1, -1, + 2968, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 2861, -1, -1, 3109, 359, 1612, + -1, -1, -1, 3115, -1, -1, -1, 2861, -1, -1, + 3122, 3, -1, 5, 3002, -1, -1, -1, 1681, 3084, + -1, -1, -1, 384, 3084, -1, -1, 3139, -1, -1, + -1, -1, -1, -1, 1850, 1851, 1852, 1853, 1854, -1, + -1, -1, 403, -1, 405, -1, -1, 408, -1, -1, + -1, 3163, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, 3127, 1726, -1, -1, -1, 3127, -1, -1, + -1, -1, -1, 3185, -1, -1, 68, 69, 3190, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 3084, -1, -1, -1, + -1, 2968, -1, -1, 3216, -1, -1, -1, -1, -1, + -1, 3299, -1, -1, 2968, -1, -1, 109, 110, -1, + -1, 113, 114, -1, -1, -1, 3238, 3239, -1, -1, + -1, -1, -1, -1, -1, 3002, -1, -1, -1, 3127, + 1753, -1, -1, 3255, -1, 3257, -1, -1, 3002, -1, + 3262, -1, -1, -1, -1, -1, -1, 518, -1, 1772, + -1, -1, -1, -1, 3276, -1, -1, 3279, -1, 1782, + -1, 1784, 3237, -1, 1787, -1, 1992, 3237, -1, -1, + 1793, -1, 1795, -1, -1, -1, -1, 3299, -1, 3301, + -1, 3303, 3304, -1, 3306, 1808, -1, 189, 190, 3311, + 1813, -1, -1, -1, 1817, 1818, 1819, 1820, -1, 1822, + 1823, -1, -1, -1, -1, -1, -1, 3084, 3330, -1, + -1, -1, 3334, -1, -1, -1, -1, -1, -1, 3341, + 3084, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 3237, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 3371, + 3127, 253, 254, 255, 256, 257, 258, 259, 260, -1, + -1, 263, 264, 3127, -1, -1, -1, 1940, 1941, 1942, + 1943, 1944, 1945, -1, -1, 1948, 1949, 1950, 1951, 1952, + 1953, 1954, 1955, 1956, 1957, -1, -1, 3409, -1, -1, + -1, -1, -1, -1, -1, 3417, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 3432, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 337, 338, 3459, -1, -1, + -1, -1, -1, 841, 842, -1, -1, -1, -1, 3471, + 3472, -1, 3474, 3475, -1, 1978, 0, -1, -1, -1, + 3237, 3483, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, 3494, 3237, -1, -1, 378, 379, 22, -1, + 2003, -1, -1, -1, 24, -1, 2009, -1, 32, -1, + 34, 35, 2015, -1, 3516, -1, -1, 2020, -1, -1, + -1, 3523, -1, 47, -1, -1, -1, -1, 52, -1, + -1, -1, -1, -1, 912, -1, -1, 61, 916, 917, + -1, -1, -1, 3498, -1, -1, -1, -1, 3498, -1, + -1, 75, -1, -1, -1, -1, 8, -1, 3560, 11, + 84, 81, 86, 15, 16, 17, 18, 19, 20, 21, + -1, -1, -1, 3575, 98, -1, 100, 97, -1, -1, + -1, -1, 2135, 2136, 36, -1, -1, 111, -1, -1, + -1, 969, 474, 475, 46, -1, -1, -1, 2101, -1, + -1, 53, 126, 127, 128, -1, -1, -1, 2111, 987, + -1, -1, -1, 137, -1, 993, 498, 499, 996, 143, + 3498, 999, 1000, 1001, 1002, -1, 146, 151, 80, 153, + 154, -1, -1, -1, -1, -1, 156, -1, -1, -1, + -1, -1, -1, -1, 168, -1, 2352, -1, 172, 169, + -1, -1, -1, -1, 174, -1, -1, -1, -1, -1, + -1, 2367, 2368, 2369, -1, -1, 1044, 1045, -1, -1, + -1, -1, -1, -1, 198, -1, 2382, -1, -1, 2385, + -1, -1, -1, 203, 2187, -1, 2392, -1, 1066, -1, + 214, -1, -1, -1, -1, -1, 2199, -1, 2251, -1, + -1, 2204, -1, -1, -1, -1, -1, 1085, -1, -1, + -1, -1, -1, -1, -1, -1, 240, -1, 1096, 1097, + 1098, -1, 1100, 1101, -1, 177, 246, -1, -1, -1, + 250, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, 3498, 194, -1, -1, 2248, -1, 199, -1, -1, + -1, 2254, -1, -1, 3498, -1, -1, -1, 1136, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 222, 223, 2478, 2479, 2480, -1, 1154, 1155, -1, -1, + -1, -1, -1, -1, -1, 237, -1, -1, -1, -1, + -1, 315, 316, 317, 314, -1, -1, -1, -1, 323, + 320, -1, 326, -1, -1, -1, -1, -1, -1, -1, + -1, -1, 1190, -1, -1, 335, 1194, 1195, -1, -1, + -1, -1, -1, 275, -1, -1, 278, 1205, 1206, -1, + -1, -1, -1, 357, -1, -1, -1, -1, -1, -1, + 292, -1, 366, 295, -1, -1, -1, -1, -1, -1, + 370, -1, -1, 373, -1, -1, -1, -1, 382, -1, + -1, -1, -1, -1, 384, 389, 26, 387, -1, 393, + -1, -1, 32, -1, -1, -1, -1, 2380, -1, 403, + 40, -1, -1, -1, -1, 405, -1, 1265, -1, -1, + -1, 415, -1, -1, -1, 419, 1274, -1, -1, 419, + 60, -1, -1, -1, -1, 425, 426, -1, -1, -1, + -1, -1, -1, -1, -1, 439, 436, -1, -1, -1, + 1298, 2627, 442, -1, -1, -1, -1, -1, 452, -1, + -1, 455, -1, -1, 458, -1, -1, -1, -1, 463, + -1, -1, 394, -1, -1, -1, 106, -1, -1, -1, + 470, -1, -1, -1, -1, -1, 480, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, 137, -1, -1, + 504, -1, -1, -1, -1, 2488, -1, -1, -1, 2492, + -1, -1, -1, -1, 518, 2498, -1, 521, -1, -1, + -1, -1, -1, -1, -1, -1, -1, 1385, -1, -1, + -1, -1, -1, -1, -1, 2721, -1, -1, -1, -1, + -1, -1, -1, 2576, 2577, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 2543, -1, 202, -1, 2547, -1, -1, -1, -1, -1, + 502, -1, -1, 505, 506, 507, -1, 509, 510, 511, + 512, 513, 514, -1, -1, -1, -1, -1, -1, -1, + 1448, 523, 1450, 1451, -1, -1, -1, -1, -1, -1, + -1, 2787, 2788, 2789, 2790, 1463, 1464, -1, -1, -1, + -1, 251, -1, -1, -1, -1, -1, -1, -1, -1, + -1, 261, -1, -1, -1, -1, 1484, -1, -1, -1, + -1, -1, -1, 273, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 2631, -1, + -1, -1, 2635, 2636, 294, -1, 2639, -1, -1, -1, + -1, -1, -1, -1, -1, 305, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, 2666, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 2681, 2682, + 2683, 2684, 2685, 2686, 2687, 2688, 2689, 2690, -1, -1, + -1, -1, -1, 353, -1, -1, -1, 357, -1, 359, + -1, -1, -1, -1, -1, -1, -1, -1, 1586, -1, + -1, -1, -1, -1, -1, -1, 1594, -1, -1, -1, + -1, 2774, -1, -1, 384, -1, -1, -1, -1, 389, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 2946, -1, -1, 403, -1, -1, 2799, -1, -1, -1, + 1628, -1, -1, -1, -1, -1, -1, 1635, -1, -1, + -1, -1, -1, 1641, 1642, 1643, 1644, 1645, 1646, 1647, + 1648, -1, -1, -1, -1, 1653, 1654, 2780, -1, -1, + 1658, -1, -1, -1, 1662, -1, -1, 1665, 1666, 1667, + 1668, 1669, 1670, 1671, 1672, 1673, -1, -1, 1676, -1, + 460, -1, -1, 2806, -1, 1683, -1, 1685, -1, -1, + -1, 8, -1, -1, 11, -1, -1, -1, 15, 16, + -1, -1, -1, -1, -1, 1703, -1, -1, -1, 8, + -1, -1, 11, -1, -1, 2838, 15, 16, 17, 18, + 19, 20, 21, 2846, -1, -1, -1, -1, -1, 46, + -1, -1, -1, -1, -1, -1, 53, 36, -1, 1737, + 1738, -1, -1, -1, -1, -1, -1, 46, -1, -1, + -1, -1, -1, -1, 53, -1, -1, -1, 2881, -1, + -1, -1, -1, 80, -1, -1, -1, 2940, -1, -1, + -1, 3, -1, -1, -1, -1, 8, -1, -1, 11, + -1, 80, -1, 15, 16, 17, 18, 19, 20, 21, + -1, 8, -1, -1, 11, -1, -1, -1, 15, 16, + -1, -1, -1, -1, 36, -1, -1, -1, 40, -1, + -1, -1, -1, -1, 46, -1, 2939, -1, -1, -1, + -1, 53, -1, -1, -1, -1, -1, -1, 145, 46, + 1828, -1, -1, -1, -1, 1833, 53, -1, 1836, 1837, + -1, -1, -1, 8, -1, -1, 11, -1, 80, -1, + 15, 16, 17, 18, 19, 20, 21, -1, -1, -1, + 177, -1, -1, 80, -1, -1, -1, -1, -1, -1, + -1, 36, -1, -1, -1, 40, -1, 194, 177, 1877, + -1, 46, 199, -1, -1, -1, -1, -1, 53, -1, + -1, -1, -1, -1, -1, 194, -1, -1, -1, -1, + 199, -1, -1, -1, 1902, 1903, -1, -1, -1, -1, + 3083, -1, -1, -1, 8, 80, -1, 11, -1, -1, + 237, 15, 16, 222, 223, 19, 20, 21, 145, 3255, + -1, -1, -1, 1931, 1932, -1, 1934, -1, 237, -1, + -1, -1, 36, -1, -1, 177, -1, -1, -1, -1, + 3276, -1, 46, -1, -1, -1, -1, -1, -1, 53, + 177, -1, 194, -1, -1, 1963, 1964, 199, -1, 1967, + -1, -1, -1, -1, -1, 292, 275, 194, -1, 278, + -1, -1, 199, -1, -1, -1, 80, -1, -1, -1, + 222, 223, 3115, 292, -1, -1, 295, -1, -1, 3122, + 1998, -1, -1, -1, -1, 237, -1, 2005, -1, -1, + -1, -1, 177, -1, 8, 3341, -1, 11, -1, -1, + 237, 15, 16, -1, -1, 2023, -1, 2025, -1, 194, + -1, -1, -1, -1, 199, -1, -1, -1, -1, -1, + -1, -1, -1, 275, -1, 3371, 278, 997, -1, -1, + -1, -1, 46, -1, -1, -1, -1, 222, 223, 53, + 292, -1, 3185, 295, -1, 2063, -1, 3190, -1, -1, + -1, -1, 237, -1, -1, 292, -1, 394, -1, -1, + -1, -1, -1, 177, -1, -1, 80, -1, -1, -1, + -1, -1, -1, 3216, -1, 394, -1, -1, -1, -1, + 194, -1, 2100, -1, -1, 199, 2104, -1, -1, -1, + 275, 2109, 2110, 278, -1, 3238, 3239, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 3299, 292, 222, 223, + 295, -1, -1, -1, -1, -1, -1, -1, -1, 3262, + -1, -1, -1, 237, -1, -1, -1, -1, -1, -1, + -1, 145, -1, -1, -1, -1, -1, -1, 2156, -1, + -1, 2159, 394, 2161, -1, -1, -1, -1, -1, -1, + -1, 1121, -1, -1, -1, -1, -1, 394, -1, 2177, + 3303, 275, -1, 177, 278, 502, -1, -1, 3311, -1, + -1, -1, 509, 510, 511, 512, 513, 514, 292, -1, + 194, 295, -1, 502, -1, 199, 505, 506, 507, -1, + 509, 510, 511, 512, 513, 514, -1, -1, -1, 2217, + 1170, -1, -1, 522, -1, -1, -1, -1, -1, 394, + -1, -1, -1, -1, -1, -1, 2234, 2235, -1, -1, + -1, -1, -1, 237, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 1204, 2253, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 2266, -1, + 502, -1, -1, 505, 506, 507, -1, 509, 510, 511, + 512, 513, 514, -1, -1, 502, -1, -1, -1, -1, + -1, -1, 509, 510, 511, 512, 513, 514, 292, -1, + 394, -1, -1, -1, -1, -1, -1, -1, -1, 1259, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 2323, -1, -1, -1, -1, + -1, 2329, -1, -1, -1, -1, -1, 502, -1, -1, + 505, 506, 507, -1, 509, 510, 511, 512, 513, 514, + -1, -1, 1302, -1, 519, -1, -1, -1, -1, 1309, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, 3494, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, 2390, -1, 8, -1, -1, 11, -1, -1, + 394, 15, 16, 17, 18, 19, 20, 21, 502, 1359, + -1, 505, 506, 507, -1, 509, 510, 511, 512, 513, + 514, -1, 36, -1, -1, -1, -1, -1, -1, -1, + -1, -1, 46, 1383, -1, -1, -1, -1, -1, 53, + -1, -1, 8, -1, -1, 11, -1, -1, -1, 15, + 16, 17, 18, 19, 20, 21, -1, -1, -1, -1, + -1, 8, -1, -1, 11, -1, 80, -1, 15, 16, + 36, -1, 19, 20, 21, -1, -1, -1, -1, -1, + 46, 1431, -1, 1433, -1, 1435, 1436, 53, 1438, 36, + -1, 1441, -1, -1, 1444, -1, -1, 1447, -1, 46, + -1, -1, 1452, -1, -1, 1455, 53, -1, 502, -1, + -1, -1, -1, -1, 80, 509, 510, 511, 512, 513, + 514, -1, -1, -1, -1, 2523, -1, -1, -1, -1, + -1, 2529, 2530, 80, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 2544, -1, 1498, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, 2560, 177, -1, 2563, -1, 2565, -1, -1, + -1, -1, -1, -1, -1, 2573, -1, -1, -1, -1, + 194, -1, -1, 2581, 2582, 199, -1, -1, -1, -1, + 2588, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 2603, -1, -1, 222, 223, + -1, 177, -1, -1, -1, 2613, -1, -1, -1, -1, + -1, -1, -1, 237, -1, -1, -1, -1, 194, -1, + 177, -1, 1582, 199, -1, 2633, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, 194, 1598, -1, + -1, -1, 199, -1, -1, -1, 222, 223, 1608, 1609, + 1610, 275, -1, -1, 278, 1615, -1, -1, -1, 1619, + -1, 237, -1, -1, -1, 222, 223, -1, 292, -1, + -1, 295, -1, -1, -1, 24, -1, -1, -1, -1, + 237, -1, -1, -1, 2692, -1, 2694, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 275, + -1, -1, 278, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 292, -1, 275, 295, + -1, 278, 1682, -1, -1, -1, -1, -1, -1, -1, + -1, -1, 81, -1, -1, 292, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 97, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 1720, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 394, -1, -1, -1, -1, -1, 1736, -1, -1, -1, + -1, 1741, -1, -1, -1, -1, 2794, 2795, -1, -1, + -1, -1, -1, -1, -1, -1, -1, 146, 1758, -1, + -1, -1, -1, -1, -1, -1, -1, 156, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 394, -1, + 169, 2829, -1, -1, -1, 174, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, 394, -1, -1, + -1, 2849, -1, -1, -1, -1, -1, 2855, 2856, -1, + -1, -1, 2860, -1, 203, -1, -1, 2865, -1, -1, + 2868, 2869, -1, -1, -1, 2873, 2874, 8, -1, 2877, + 11, -1, -1, -1, 15, 16, -1, -1, 502, -1, + 2888, 505, 506, 507, -1, 509, 510, 511, 512, 513, + 514, -1, -1, -1, -1, 519, -1, 246, -1, -1, + -1, 250, -1, -1, -1, 46, -1, -1, -1, -1, + -1, -1, 53, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 2932, -1, 502, -1, -1, 505, + 506, 507, -1, 509, 510, 511, 512, 513, 514, 80, + -1, -1, -1, 519, -1, 502, -1, -1, 505, 506, + 507, 2959, 509, 510, 511, 512, 513, 514, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 1929, + -1, 320, -1, -1, -1, -1, -1, 1937, 1938, -1, + 1940, 1941, 1942, 1943, 1944, 1945, 335, -1, 1948, 1949, + 1950, 1951, 1952, 1953, 1954, 1955, 1956, 1957, 1958, -1, + -1, -1, -1, 8, 145, -1, 11, -1, -1, -1, + 15, 16, 17, 18, 19, 20, 21, -1, -1, -1, + -1, 370, -1, -1, 373, -1, -1, -1, -1, -1, + -1, 36, -1, -1, -1, 384, 177, -1, 387, -1, + -1, 46, -1, -1, -1, -1, -1, -1, 53, -1, + -1, -1, -1, 194, -1, -1, 405, -1, 199, -1, + -1, -1, -1, -1, 3072, -1, -1, -1, -1, -1, + 419, -1, -1, -1, -1, 80, -1, 426, -1, -1, + -1, -1, -1, -1, -1, -1, -1, 436, -1, -1, + -1, 3099, -1, 442, -1, -1, 237, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 2066, -1, -1, 2069, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, 470, -1, -1, -1, 3133, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, 3150, 3151, -1, -1, 3154, -1, 3156, -1, + -1, 292, -1, -1, 2114, -1, -1, -1, 2118, -1, + -1, -1, 2122, 2123, 2124, 2125, 2126, 2127, 2128, 2129, + -1, -1, 177, 3181, -1, 2135, 2136, -1, 2138, 2139, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 194, + -1, -1, 2152, -1, 199, 2155, -1, 3205, -1, -1, + -1, -1, -1, 2163, 2164, 2165, 2166, 2167, 2168, 2169, + 2170, 2171, 2172, -1, -1, -1, -1, 222, 223, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, 237, -1, -1, -1, -1, -1, 2198, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, 394, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 275, -1, -1, 278, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 3293, -1, 292, -1, 3297, + 295, 2251, -1, 3301, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, 3315, -1, -1, + -1, -1, 3320, -1, 3322, -1, -1, -1, -1, -1, + -1, -1, 3330, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 3348, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, 502, -1, -1, 2324, -1, -1, -1, 509, 510, + 511, 512, 513, 514, 2334, 2335, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, 3395, -1, 394, + -1, -1, -1, -1, -1, -1, -1, 3405, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 3417, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, 2401, 3450, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, 2427, 2428, 2429, + -1, -1, 2432, 2433, 2434, 2435, 2436, 2437, -1, -1, + -1, 2441, 2442, 2443, 2444, 2445, 2446, 2447, 2448, 2449, + 2450, -1, -1, -1, -1, 2455, 2456, 502, -1, -1, + 505, 506, 507, -1, 509, 510, 511, 512, 513, 514, + -1, -1, -1, -1, 519, -1, -1, -1, -1, -1, + -1, 2481, -1, -1, -1, -1, -1, 2487, -1, 3537, + 3538, 3539, -1, 8, -1, -1, 11, -1, -1, -1, + 15, 16, 17, 18, 19, 20, 21, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 3564, -1, -1, -1, + -1, 36, 2522, -1, -1, -1, -1, -1, -1, -1, + -1, 46, -1, -1, -1, -1, -1, -1, 53, 2539, + -1, -1, -1, -1, -1, 2545, -1, -1, -1, -1, + -1, -1, -1, 2553, 2554, -1, -1, 3605, -1, -1, + -1, 2561, 2562, -1, -1, 80, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 2575, 2576, 2577, 2578, -1, + 2580, -1, -1, -1, 2584, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 8, -1, + -1, 11, -1, -1, -1, 15, 16, 17, 18, 19, + 20, 21, -1, -1, -1, -1, -1, -1, -1, 68, + 69, -1, -1, -1, -1, -1, 36, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 46, -1, -1, -1, + 2640, -1, -1, 53, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 109, 110, 177, -1, 113, 114, -1, -1, -1, -1, + 80, -1, -1, -1, -1, -1, -1, -1, 8, 194, + -1, 11, -1, -1, 199, 15, 16, 17, 18, 19, + 20, 21, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 36, 222, 223, -1, + -1, -1, -1, -1, -1, -1, 46, -1, -1, -1, + -1, -1, 237, 53, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 189, 190, -1, -1, -1, -1, -1, -1, -1, -1, + 80, -1, 2752, -1, -1, -1, -1, -1, -1, -1, + 275, -1, -1, 278, -1, -1, -1, 177, -1, -1, + -1, -1, -1, -1, 2774, -1, -1, 292, -1, -1, + 295, -1, -1, -1, 194, -1, -1, -1, 8, 199, + -1, 11, -1, -1, -1, 15, 16, 17, 18, 19, + 20, 21, -1, -1, 253, 254, 255, 256, 257, 258, + 259, 260, 222, 223, 263, 264, 36, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 46, 237, -1, -1, + 2830, -1, 2832, 53, -1, -1, -1, -1, -1, -1, + -1, 2841, -1, -1, -1, -1, -1, 177, -1, 68, + 69, -1, -1, -1, 2854, -1, -1, 2857, -1, 2859, + 80, -1, -1, 2863, 194, 275, 2866, 2867, 278, 199, + 2870, 2871, -1, -1, -1, -1, -1, -1, 2878, 394, + -1, -1, 292, -1, -1, 295, -1, 2887, 337, 338, + 109, 110, 222, 223, 113, 114, -1, -1, -1, -1, + -1, -1, 2902, -1, -1, -1, -1, 237, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 378, + 379, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 2940, -1, -1, -1, -1, 275, -1, -1, 278, -1, + -1, -1, -1, -1, -1, -1, -1, 177, -1, -1, + -1, -1, 292, -1, -1, 295, -1, -1, -1, -1, + 189, 190, -1, -1, 194, -1, -1, -1, -1, 199, + -1, -1, -1, -1, 394, -1, -1, 502, -1, -1, + 505, 506, 507, -1, 509, 510, 511, 512, 513, 514, + -1, -1, 222, 223, 519, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, 237, -1, -1, + -1, -1, -1, -1, -1, 474, 475, -1, -1, -1, + -1, -1, -1, -1, 253, 254, 255, 256, 257, 258, + 259, 260, -1, -1, 263, 264, -1, -1, -1, 498, + 499, -1, -1, -1, -1, 275, -1, -1, 278, -1, + -1, -1, -1, -1, 394, -1, -1, -1, -1, 518, + -1, -1, 292, -1, -1, 295, -1, -1, -1, -1, + -1, -1, 3082, 3083, -1, -1, -1, -1, -1, -1, + -1, -1, 502, -1, -1, 505, 506, 507, -1, 509, + 510, 511, 512, 513, 514, -1, -1, 3107, 3108, 519, + -1, -1, -1, -1, -1, -1, -1, -1, 337, 338, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, 3131, -1, -1, -1, -1, -1, -1, -1, -1, + 3140, -1, -1, -1, 3144, 3145, 3146, -1, -1, 3149, + -1, -1, 3152, 3153, -1, -1, -1, -1, -1, 378, + 379, 3161, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, 502, -1, 394, 505, 506, 507, -1, 509, + 510, 511, 512, 513, 514, -1, -1, -1, -1, 519, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, 3202, -1, -1, -1, -1, -1, 3208, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, 3221, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 474, 475, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 498, + 499, 3281, 502, -1, -1, 505, 506, 507, -1, 509, + 510, 511, 512, 513, 514, -1, -1, -1, -1, 519, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, 3317, 3318, 3319, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, 3337, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 3349, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 3410, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 3420, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 3445, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 3470, -1, -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, 4, 5, 6, + 7, 8, 9, 10, -1, -1, -1, -1, -1, -1, + -1, -1, -1, 3513, -1, 22, 23, 24, 25, 26, + 27, 28, 29, -1, 31, 32, 33, -1, -1, -1, + -1, -1, 39, -1, -1, 42, 43, 44, -1, 46, + 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, + 57, -1, 59, 60, 61, 62, 63, 64, 65, 66, + 67, 68, 69, 70, 71, 72, 73, 3567, 75, 76, + 77, 78, 79, -1, 81, -1, 83, 84, 85, 86, + 87, 88, 89, 90, 91, 92, -1, 94, 95, 96, + 97, 98, 99, -1, 101, 102, 103, 104, 105, 106, + 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, + 117, 118, -1, 120, 121, 122, 123, 124, 125, 126, + 127, 128, 129, 130, 131, -1, -1, 134, 135, 136, + 137, 138, -1, 140, 141, 142, -1, 144, 145, 146, + -1, 148, 149, 150, 151, 152, 153, 154, 155, 156, + 157, 158, 159, 160, 161, -1, 163, 164, 165, 166, + -1, 168, -1, 170, 171, 172, 173, 174, 175, 176, + 177, 178, -1, 180, -1, 182, 183, 184, 185, -1, + 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, + 197, 198, -1, 200, 201, 202, 203, 204, 205, 206, + -1, 208, 209, 210, 211, 212, 213, 214, 215, 216, + 217, -1, 219, -1, 221, 222, 223, 224, 225, 226, + 227, 228, 229, 230, 231, -1, -1, 234, 235, 236, + 237, -1, 239, 240, 241, 242, 243, 244, 245, 246, + 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, + 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, + 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, + 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, + -1, 288, 289, -1, -1, 292, 293, 294, -1, -1, + 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, + 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, + 317, -1, 319, 320, 321, 322, 323, 324, 325, 326, + 327, 328, -1, 330, 331, 332, 333, 334, 335, -1, + 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, + -1, 348, 349, 350, 351, 352, 353, 354, 355, 356, + 357, 358, 359, 360, -1, 362, 363, 364, 365, 366, + 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, + 377, 378, 379, 380, 381, 382, -1, 384, 385, 386, + 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, + 397, 398, -1, 400, 401, 402, 403, 404, 405, 406, + 407, 408, 409, 410, 411, 412, 413, 414, 415, -1, + 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, + -1, 428, 429, 430, -1, -1, 433, 434, 435, 436, + 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, + -1, -1, 449, 450, 451, 452, 453, 454, 455, 456, + -1, 458, 459, 460, 461, 462, 463, 464, 465, -1, + 467, 468, 469, 470, 471, 472, 473, 474, 475, -1, + -1, 478, -1, 480, 481, 482, 483, 484, 485, 486, + 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, + 497, 498, 499, 500, 501, 502, -1, 504, -1, -1, + -1, -1, 509, 510, 511, -1, -1, -1, -1, 516, + -1, 518, 519, -1, -1, -1, -1, 524, 525, 526, + 527, 3, 4, 5, 6, 7, 8, 9, 10, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 22, 23, 24, 25, 26, 27, 28, 29, -1, 31, + 32, 33, -1, -1, -1, -1, -1, 39, -1, -1, + 42, 43, 44, -1, 46, 47, 48, 49, 50, 51, + 52, 53, 54, 55, 56, 57, -1, 59, 60, 61, + 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, + 72, 73, -1, 75, 76, 77, 78, 79, -1, 81, + -1, 83, 84, 85, 86, 87, 88, 89, 90, 91, + 92, -1, 94, 95, 96, 97, 98, 99, -1, 101, + 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, + 112, 113, 114, 115, 116, 117, 118, -1, 120, 121, + 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, + -1, -1, 134, 135, 136, 137, 138, -1, 140, 141, + 142, -1, 144, 145, 146, -1, 148, 149, 150, 151, + 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, + -1, 163, 164, 165, 166, -1, 168, -1, 170, 171, + 172, 173, 174, 175, 176, 177, 178, -1, 180, -1, + 182, 183, 184, 185, -1, 187, 188, 189, 190, 191, + 192, 193, 194, 195, 196, 197, 198, -1, 200, 201, + 202, 203, 204, 205, 206, -1, 208, 209, 210, 211, + 212, 213, 214, 215, 216, 217, -1, 219, -1, 221, + 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, + -1, -1, 234, 235, 236, 237, -1, 239, 240, 241, + 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, + 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, + 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, + 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, + 282, 283, 284, 285, 286, -1, 288, 289, -1, -1, + 292, 293, 294, -1, -1, 297, 298, 299, 300, 301, + 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, + 312, 313, 314, 315, 316, 317, -1, 319, 320, 321, + 322, 323, 324, 325, 326, 327, 328, -1, 330, 331, + 332, 333, 334, 335, -1, 337, 338, 339, 340, 341, + 342, 343, 344, 345, 346, -1, 348, 349, 350, 351, + 352, 353, 354, 355, 356, 357, 358, 359, 360, -1, + 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, + 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, + 382, -1, 384, 385, 386, 387, 388, 389, 390, 391, + 392, 393, 394, 395, 396, 397, 398, -1, 400, 401, + 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, + 412, 413, 414, 415, -1, 417, 418, 419, 420, 421, + 422, 423, 424, 425, 426, -1, 428, 429, 430, -1, + -1, 433, 434, 435, 436, 437, 438, 439, 440, 441, + 442, 443, 444, 445, 446, -1, -1, 449, 450, 451, + 452, 453, 454, 455, 456, -1, 458, 459, 460, 461, + 462, 463, 464, 465, -1, 467, 468, 469, 470, 471, + 472, 473, 474, 475, -1, -1, 478, -1, 480, 481, + 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, + 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, + 502, -1, 504, -1, -1, -1, -1, 509, 510, 511, + -1, -1, -1, -1, 516, -1, 518, -1, -1, -1, + -1, -1, 524, 525, 526, 527, 3, 4, 5, 6, + 7, 8, 9, 10, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 22, 23, 24, 25, 26, + 27, 28, 29, -1, 31, 32, 33, -1, -1, -1, + -1, -1, 39, -1, -1, 42, 43, 44, -1, 46, + 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, + 57, -1, 59, 60, 61, 62, 63, 64, 65, 66, + 67, 68, 69, 70, 71, 72, 73, -1, 75, 76, + 77, 78, 79, -1, 81, -1, 83, 84, 85, 86, + 87, 88, 89, 90, 91, 92, -1, 94, 95, 96, + 97, 98, 99, -1, 101, 102, 103, 104, 105, 106, + 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, + 117, 118, -1, 120, 121, 122, 123, 124, 125, -1, + -1, 128, 129, 130, 131, -1, -1, 134, 135, 136, + 137, 138, -1, 140, 141, 142, -1, 144, 145, 146, + -1, 148, 149, 150, 151, 152, 153, 154, 155, 156, + 157, 158, 159, 160, 161, -1, 163, 164, 165, 166, + -1, 168, -1, 170, 171, 172, 173, 174, 175, 176, + 177, 178, -1, 180, -1, 182, 183, 184, 185, -1, + 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, + 197, 198, -1, 200, 201, 202, 203, 204, 205, 206, + -1, 208, 209, 210, 211, 212, 213, 214, 215, 216, + 217, -1, 219, -1, 221, 222, 223, 224, 225, 226, + 227, 228, 229, 230, 231, -1, -1, 234, 235, 236, + 237, -1, 239, 240, 241, 242, 243, 244, 245, 246, + 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, + 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, + 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, + 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, + -1, 288, 289, -1, -1, 292, 293, 294, -1, -1, + 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, + 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, + 317, -1, 319, 320, 321, 322, 323, 324, 325, 326, + 327, 328, -1, 330, 331, 332, 333, 334, 335, -1, + 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, + -1, 348, 349, 350, 351, 352, 353, 354, 355, 356, + 357, 358, 359, 360, -1, 362, 363, 364, 365, 366, + 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, + 377, 378, 379, 380, 381, 382, -1, 384, 385, 386, + 387, 388, 389, 390, 391, 392, -1, 394, 395, 396, + 397, 398, -1, 400, 401, 402, 403, 404, 405, 406, + 407, 408, 409, 410, 411, 412, 413, 414, -1, -1, + 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, + -1, 428, 429, 430, -1, -1, 433, 434, 435, 436, + 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, + -1, -1, 449, 450, 451, 452, 453, 454, 455, 456, + -1, 458, 459, 460, 461, 462, 463, 464, 465, -1, + 467, 468, 469, 470, 471, 472, 473, 474, 475, -1, + -1, 478, -1, 480, 481, 482, 483, 484, 485, 486, + 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, + 497, 498, 499, 500, 501, 502, -1, 504, -1, -1, + -1, -1, 509, 510, 511, -1, -1, -1, -1, 516, + -1, 518, -1, -1, -1, -1, -1, 524, 525, 526, + 527, 3, 4, 5, 6, 7, 8, 9, 10, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, + 32, 33, -1, -1, -1, 37, -1, 39, -1, -1, + 42, 43, 44, -1, 46, 47, 48, 49, 50, 51, + 52, 53, 54, 55, 56, 57, -1, 59, 60, 61, + 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, + 72, 73, -1, 75, 76, 77, 78, 79, -1, 81, + -1, 83, 84, 85, 86, 87, 88, 89, 90, 91, + 92, -1, 94, 95, 96, 97, 98, 99, -1, 101, + 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, + 112, 113, 114, 115, 116, 117, 118, -1, 120, 121, + 122, 123, 124, 125, -1, -1, 128, 129, 130, 131, + 132, -1, 134, 135, 136, 137, 138, -1, 140, 141, + 142, -1, 144, 145, 146, -1, 148, 149, 150, 151, + 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, + -1, 163, 164, 165, 166, -1, 168, -1, 170, 171, + -1, 173, 174, 175, 176, 177, 178, -1, 180, -1, + 182, 183, 184, 185, -1, 187, 188, 189, 190, 191, + 192, 193, 194, 195, 196, 197, 198, -1, 200, 201, + 202, 203, 204, 205, 206, -1, 208, 209, 210, 211, + 212, 213, 214, 215, 216, 217, -1, 219, -1, 221, + 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, + -1, -1, 234, 235, 236, 237, -1, 239, 240, 241, + 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, + 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, + 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, + 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, + 282, 283, 284, 285, 286, -1, 288, 289, -1, -1, + 292, 293, 294, -1, 296, 297, 298, 299, 300, 301, + 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, + 312, 313, 314, -1, -1, -1, -1, 319, 320, 321, + 322, 323, 324, 325, 326, 327, 328, -1, 330, 331, + 332, 333, 334, 335, -1, 337, 338, 339, 340, 341, + 342, 343, 344, 345, 346, -1, 348, 349, 350, 351, + 352, 353, 354, 355, 356, 357, 358, 359, 360, -1, + 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, + 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, + -1, 383, 384, 385, 386, 387, 388, 389, 390, 391, + 392, -1, 394, 395, 396, 397, 398, -1, 400, 401, + 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, + 412, 413, 414, -1, -1, 417, 418, -1, 420, 421, + 422, 423, 424, 425, 426, -1, 428, 429, 430, -1, + -1, 433, 434, 435, 436, 437, 438, 439, 440, 441, + 442, 443, 444, 445, 446, -1, -1, 449, 450, 451, + -1, 453, 454, 455, 456, -1, 458, 459, 460, 461, + 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, + 472, 473, 474, 475, -1, -1, 478, -1, -1, 481, + 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, + 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, + 502, -1, -1, -1, -1, -1, -1, 509, 510, 511, + -1, -1, -1, -1, 516, -1, 518, 519, -1, -1, + -1, -1, 524, 525, 526, 527, 3, 4, 5, 6, + 7, -1, 9, 10, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 22, 23, 24, 25, 26, + 27, 28, 29, -1, 31, 32, 33, -1, -1, -1, + -1, -1, 39, -1, -1, 42, 43, 44, -1, 46, + 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, + 57, -1, 59, 60, 61, 62, 63, 64, 65, 66, + 67, 68, 69, 70, 71, 72, 73, -1, 75, 76, + 77, 78, 79, -1, 81, -1, 83, 84, 85, 86, + 87, 88, 89, 90, 91, 92, -1, 94, 95, 96, + 97, 98, 99, -1, 101, 102, 103, 104, 105, 106, + 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, + -1, 118, -1, 120, 121, 122, 123, 124, 125, 126, + 127, 128, 129, 130, 131, -1, -1, 134, 135, 136, + 137, 138, -1, 140, 141, 142, -1, 144, 145, 146, + -1, 148, 149, 150, 151, 152, 153, 154, 155, 156, + 157, 158, 159, 160, 161, -1, 163, 164, 165, 166, + -1, 168, -1, 170, 171, 172, 173, 174, 175, 176, + 177, 178, -1, 180, -1, 182, 183, 184, 185, -1, + 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, + 197, 198, -1, 200, 201, 202, 203, 204, 205, 206, + -1, 208, 209, 210, 211, 212, 213, 214, 215, 216, + 217, -1, 219, -1, 221, 222, 223, 224, 225, 226, + 227, 228, 229, 230, 231, -1, -1, 234, 235, 236, + 237, -1, 239, 240, 241, 242, 243, 244, 245, 246, + 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, + 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, + 267, 268, 269, 270, 271, 272, 273, 274, -1, 276, + 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, + -1, 288, 289, -1, -1, 292, 293, 294, -1, -1, + 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, + 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, + 317, -1, 319, 320, 321, 322, 323, 324, 325, 326, + 327, 328, -1, 330, 331, 332, 333, 334, 335, -1, + 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, + -1, 348, 349, 350, 351, 352, 353, 354, 355, 356, + 357, 358, 359, 360, -1, 362, 363, 364, 365, 366, + 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, + 377, 378, 379, 380, 381, 382, -1, 384, 385, 386, + 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, + 397, 398, -1, 400, 401, 402, 403, 404, 405, 406, + 407, 408, 409, 410, 411, 412, 413, 414, 415, -1, + 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, + -1, 428, 429, 430, -1, -1, 433, 434, 435, 436, + 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, + -1, -1, 449, 450, 451, 452, 453, 454, 455, 456, + -1, 458, 459, 460, 461, 462, 463, 464, 465, -1, + 467, 468, 469, 470, 471, 472, 473, 474, 475, -1, + -1, 478, -1, 480, 481, 482, 483, 484, 485, 486, + 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, + 497, 498, 499, 500, 501, -1, -1, 504, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 516, + -1, 518, -1, -1, -1, -1, -1, 524, 525, 526, + 527, 3, 4, 5, 6, 7, 8, 9, 10, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 22, 23, 24, 25, 26, 27, 28, 29, -1, 31, + 32, 33, -1, -1, -1, -1, -1, 39, -1, -1, + 42, 43, 44, -1, 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, -1, 75, 76, 77, 78, 79, -1, 81, + -1, 83, 84, 85, 86, 87, 88, 89, 90, 91, + 92, -1, 94, 95, 96, 97, 98, 99, -1, 101, + 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, + 112, 113, 114, 115, 116, 117, 118, -1, 120, 121, + 122, 123, 124, 125, -1, -1, 128, 129, 130, 131, + -1, -1, 134, 135, 136, 137, 138, -1, 140, 141, + 142, -1, 144, 145, 146, -1, 148, 149, 150, 151, + 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, + -1, 163, 164, 165, 166, -1, 168, -1, 170, 171, + 172, 173, 174, 175, 176, 177, 178, -1, 180, -1, + 182, 183, 184, 185, -1, 187, 188, 189, 190, 191, + 192, 193, 194, 195, 196, 197, 198, -1, 200, 201, + 202, 203, 204, 205, 206, -1, 208, 209, 210, 211, + 212, 213, 214, 215, 216, 217, -1, 219, -1, 221, + 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, + -1, 233, 234, 235, 236, 237, -1, 239, 240, 241, + 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, + 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, + 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, + 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, + 282, 283, 284, 285, 286, -1, 288, 289, -1, -1, + 292, 293, 294, -1, -1, 297, 298, 299, 300, 301, + 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, + 312, 313, 314, -1, -1, -1, -1, 319, 320, 321, + 322, 323, 324, 325, 326, 327, 328, -1, 330, 331, + 332, 333, 334, 335, -1, 337, 338, 339, 340, 341, + 342, 343, 344, 345, 346, -1, 348, 349, 350, 351, + 352, 353, 354, 355, 356, 357, 358, 359, 360, -1, + 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, + 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, + -1, -1, 384, 385, 386, 387, 388, 389, 390, 391, + 392, -1, 394, 395, 396, 397, 398, -1, 400, 401, + 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, + 412, 413, 414, -1, -1, 417, 418, -1, 420, 421, + 422, 423, 424, 425, 426, -1, 428, 429, 430, -1, + 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, + 442, 443, 444, 445, 446, -1, -1, 449, 450, 451, + -1, 453, 454, 455, 456, -1, 458, 459, 460, 461, + 462, 463, 464, 465, -1, 467, 468, 469, 470, 471, + 472, 473, 474, 475, -1, -1, 478, -1, -1, 481, + 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, + 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, + 502, -1, -1, -1, -1, -1, -1, 509, 510, 511, + -1, -1, -1, -1, 516, -1, 518, -1, -1, -1, + -1, -1, 524, 525, 526, 527, 3, 4, 5, 6, + 7, 8, 9, 10, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 22, 23, 24, 25, 26, + 27, 28, 29, -1, 31, 32, 33, -1, -1, -1, + 37, -1, 39, -1, -1, 42, 43, 44, -1, 46, + 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, + 57, -1, 59, 60, 61, 62, 63, 64, 65, 66, + 67, 68, 69, 70, 71, 72, 73, -1, 75, 76, + 77, 78, 79, -1, 81, -1, 83, 84, 85, 86, + 87, 88, 89, 90, 91, 92, -1, 94, 95, 96, + 97, 98, 99, -1, 101, 102, 103, 104, 105, 106, + 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, + 117, 118, -1, 120, 121, 122, 123, 124, 125, -1, + -1, 128, 129, 130, 131, -1, -1, 134, 135, 136, + 137, 138, -1, 140, 141, 142, -1, 144, 145, 146, + -1, 148, 149, 150, 151, 152, 153, 154, 155, 156, + 157, 158, 159, 160, 161, -1, 163, 164, 165, 166, + -1, 168, -1, 170, 171, -1, 173, 174, 175, 176, + 177, 178, -1, 180, -1, 182, 183, 184, 185, -1, + 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, + 197, 198, -1, 200, 201, 202, 203, 204, 205, 206, + -1, 208, 209, 210, 211, 212, 213, 214, 215, 216, + 217, -1, 219, -1, 221, 222, 223, 224, 225, 226, + 227, 228, 229, 230, 231, -1, -1, 234, 235, 236, + 237, -1, 239, 240, 241, 242, 243, 244, 245, 246, + 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, + 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, + 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, + 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, + -1, 288, 289, -1, -1, 292, 293, 294, -1, -1, + 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, + 307, 308, 309, 310, 311, 312, 313, 314, -1, -1, + -1, -1, 319, 320, 321, 322, 323, 324, 325, 326, + 327, 328, -1, 330, 331, 332, 333, 334, 335, -1, + 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, + -1, 348, 349, 350, 351, 352, 353, 354, 355, 356, + 357, 358, 359, 360, -1, 362, 363, 364, 365, 366, + 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, + 377, 378, 379, 380, 381, -1, 383, 384, 385, 386, + 387, 388, 389, 390, 391, 392, -1, 394, 395, 396, + 397, 398, -1, 400, 401, 402, 403, 404, 405, 406, + 407, 408, 409, 410, 411, 412, 413, 414, -1, -1, + 417, 418, -1, 420, 421, 422, 423, 424, 425, 426, + -1, 428, 429, 430, -1, -1, 433, 434, 435, 436, + 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, + -1, -1, 449, 450, 451, -1, 453, 454, 455, 456, + -1, 458, 459, 460, 461, 462, 463, 464, 465, 466, + 467, 468, 469, 470, 471, 472, 473, 474, 475, -1, + -1, 478, -1, -1, 481, 482, 483, 484, 485, 486, + 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, + 497, 498, 499, 500, 501, 502, -1, -1, -1, -1, + -1, -1, 509, 510, 511, -1, -1, -1, -1, 516, + -1, 518, -1, -1, -1, -1, -1, 524, 525, 526, + 527, 3, 4, 5, 6, 7, 8, 9, 10, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 22, 23, 24, 25, 26, 27, 28, 29, -1, 31, + 32, 33, -1, -1, -1, 37, -1, 39, -1, -1, + 42, 43, 44, -1, 46, 47, 48, 49, 50, 51, + 52, 53, 54, 55, 56, 57, -1, 59, 60, 61, + 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, + 72, 73, -1, 75, 76, 77, 78, 79, -1, 81, + -1, 83, 84, 85, 86, 87, 88, 89, 90, 91, + 92, -1, 94, 95, 96, 97, 98, 99, -1, 101, + 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, + 112, 113, 114, 115, 116, 117, 118, -1, 120, 121, + 122, 123, 124, 125, -1, -1, 128, 129, 130, 131, + -1, -1, 134, 135, 136, 137, 138, -1, 140, 141, + 142, -1, 144, 145, 146, -1, 148, 149, 150, 151, + 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, + -1, 163, 164, 165, 166, -1, 168, -1, 170, 171, + -1, 173, 174, 175, 176, 177, 178, -1, 180, -1, + 182, 183, 184, 185, -1, 187, 188, 189, 190, 191, + 192, 193, 194, 195, 196, 197, 198, -1, 200, 201, + 202, 203, 204, 205, 206, -1, 208, 209, 210, 211, + 212, 213, 214, 215, 216, 217, -1, 219, -1, 221, + 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, + -1, -1, 234, 235, 236, 237, -1, 239, 240, 241, + 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, + 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, + 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, + 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, + 282, 283, 284, 285, 286, -1, 288, 289, -1, -1, + 292, 293, 294, -1, -1, 297, 298, 299, 300, 301, + 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, + 312, 313, 314, -1, -1, -1, -1, 319, 320, 321, + 322, 323, 324, 325, 326, 327, 328, -1, 330, 331, + 332, 333, 334, 335, -1, 337, 338, 339, 340, 341, + 342, 343, 344, 345, 346, -1, 348, 349, 350, 351, + 352, 353, 354, 355, 356, 357, 358, 359, 360, -1, + 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, + 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, + -1, 383, 384, 385, 386, 387, 388, 389, 390, 391, + 392, -1, 394, 395, 396, 397, 398, -1, 400, 401, + 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, + 412, 413, 414, -1, -1, 417, 418, -1, 420, 421, + 422, 423, 424, 425, 426, -1, 428, 429, 430, -1, + -1, 433, 434, 435, 436, 437, 438, 439, 440, 441, + 442, 443, 444, 445, 446, -1, -1, 449, 450, 451, + -1, 453, 454, 455, 456, -1, 458, 459, 460, 461, + 462, 463, 464, 465, -1, 467, 468, 469, 470, 471, + 472, 473, 474, 475, -1, -1, 478, -1, -1, 481, + 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, + 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, + 502, -1, -1, -1, -1, -1, -1, 509, 510, 511, + -1, -1, -1, -1, 516, -1, 518, 519, -1, -1, + -1, -1, 524, 525, 526, 527, 3, 4, 5, 6, + 7, 8, 9, 10, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 22, 23, 24, 25, 26, + 27, 28, 29, 30, 31, 32, 33, -1, -1, -1, + -1, 38, 39, -1, -1, 42, 43, 44, -1, 46, + 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, + 57, -1, 59, 60, 61, 62, 63, 64, 65, 66, + 67, 68, 69, 70, 71, 72, 73, -1, 75, 76, + 77, 78, 79, -1, 81, -1, 83, 84, 85, 86, + 87, 88, 89, 90, 91, 92, -1, 94, 95, 96, + 97, 98, 99, -1, 101, 102, 103, 104, 105, 106, + 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, + 117, 118, -1, 120, 121, 122, 123, 124, 125, -1, + -1, 128, 129, 130, 131, -1, -1, 134, 135, 136, + 137, 138, -1, 140, 141, 142, -1, 144, 145, 146, + -1, 148, 149, 150, 151, 152, 153, 154, 155, 156, + 157, 158, 159, 160, 161, -1, 163, 164, 165, 166, + -1, 168, -1, 170, 171, -1, 173, 174, 175, 176, + 177, 178, -1, 180, -1, 182, 183, 184, 185, -1, + 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, + 197, 198, -1, 200, 201, 202, 203, 204, 205, 206, + -1, 208, 209, 210, 211, 212, 213, 214, 215, 216, + 217, -1, 219, -1, 221, 222, 223, 224, 225, 226, + 227, 228, 229, 230, 231, -1, -1, 234, 235, 236, + 237, -1, 239, 240, 241, 242, 243, 244, 245, 246, + 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, + 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, + 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, + 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, + -1, 288, 289, -1, -1, 292, 293, 294, -1, -1, + 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, + 307, 308, 309, 310, 311, 312, 313, 314, -1, -1, + -1, -1, 319, 320, 321, 322, 323, 324, 325, 326, + 327, 328, -1, 330, 331, 332, 333, 334, 335, -1, + 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, + -1, 348, 349, 350, 351, 352, 353, 354, 355, 356, + 357, 358, 359, 360, -1, 362, 363, 364, 365, 366, + 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, + 377, 378, 379, 380, 381, -1, -1, 384, 385, 386, + 387, 388, 389, 390, 391, 392, -1, 394, 395, 396, + 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, + 407, 408, 409, 410, 411, 412, 413, 414, -1, -1, + 417, 418, -1, 420, 421, 422, 423, 424, 425, 426, + -1, 428, 429, 430, -1, -1, 433, 434, 435, 436, + 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, + -1, -1, 449, 450, 451, -1, 453, 454, 455, 456, + -1, 458, 459, 460, 461, 462, 463, 464, 465, -1, + 467, 468, 469, 470, 471, 472, 473, 474, 475, -1, + -1, 478, -1, -1, 481, 482, 483, 484, 485, 486, + 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, + 497, 498, 499, 500, 501, 502, -1, -1, -1, -1, + -1, -1, 509, 510, 511, -1, -1, -1, -1, 516, + -1, 518, -1, -1, -1, -1, -1, 524, 525, 526, + 527, 3, 4, 5, 6, 7, 8, 9, 10, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 22, 23, 24, 25, 26, 27, 28, 29, -1, 31, + 32, 33, -1, -1, -1, 37, -1, 39, -1, -1, + 42, 43, 44, -1, 46, 47, 48, 49, 50, 51, + 52, 53, 54, 55, 56, 57, -1, 59, 60, 61, + 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, + 72, 73, -1, 75, 76, 77, 78, 79, -1, 81, + -1, 83, 84, 85, 86, 87, 88, 89, 90, 91, + 92, -1, 94, 95, 96, 97, 98, 99, -1, 101, + 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, + 112, 113, 114, 115, 116, 117, 118, -1, 120, 121, + 122, 123, 124, 125, -1, -1, 128, 129, 130, 131, + -1, -1, 134, 135, 136, 137, 138, -1, 140, 141, + 142, -1, 144, 145, 146, -1, 148, 149, 150, 151, + 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, + -1, 163, 164, 165, 166, -1, 168, -1, 170, 171, + -1, 173, 174, 175, 176, 177, 178, -1, 180, -1, + 182, 183, 184, 185, -1, 187, 188, 189, 190, 191, + 192, 193, 194, 195, 196, 197, 198, -1, 200, 201, + 202, 203, 204, 205, 206, -1, 208, 209, 210, 211, + 212, 213, 214, 215, 216, 217, -1, 219, -1, 221, + 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, + -1, -1, 234, 235, 236, 237, -1, 239, 240, 241, + 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, + 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, + 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, + 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, + 282, 283, 284, 285, 286, -1, 288, 289, -1, -1, + 292, 293, 294, -1, -1, 297, 298, 299, 300, 301, + 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, + 312, 313, 314, -1, -1, -1, -1, 319, 320, 321, + 322, 323, 324, 325, 326, 327, 328, -1, 330, 331, + 332, 333, 334, 335, -1, 337, 338, 339, 340, 341, + 342, 343, 344, 345, 346, -1, 348, 349, 350, 351, + 352, 353, 354, 355, 356, 357, 358, 359, 360, -1, + 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, + 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, + -1, 383, 384, 385, 386, 387, 388, 389, 390, 391, + 392, -1, 394, 395, 396, 397, 398, -1, 400, 401, + 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, + 412, 413, 414, -1, -1, 417, 418, -1, 420, 421, + 422, 423, 424, 425, 426, -1, 428, 429, 430, -1, + -1, 433, 434, 435, 436, 437, 438, 439, 440, 441, + 442, 443, 444, 445, 446, -1, -1, 449, 450, 451, + -1, 453, 454, 455, 456, -1, 458, 459, 460, 461, + 462, 463, 464, 465, -1, 467, 468, 469, 470, 471, + 472, 473, 474, 475, -1, -1, 478, -1, -1, 481, + 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, + 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, + 502, -1, -1, -1, -1, -1, -1, 509, 510, 511, + -1, -1, -1, -1, 516, -1, 518, 519, -1, -1, + -1, -1, 524, 525, 526, 527, 3, 4, 5, 6, + 7, 8, 9, 10, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 22, 23, 24, 25, 26, + 27, 28, 29, -1, 31, 32, 33, -1, -1, -1, + 37, -1, 39, -1, -1, 42, 43, 44, -1, 46, + 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, + 57, -1, 59, 60, 61, 62, 63, 64, 65, 66, + 67, 68, 69, 70, 71, 72, 73, -1, 75, 76, + 77, 78, 79, -1, 81, -1, 83, 84, 85, 86, + 87, 88, 89, 90, 91, 92, -1, 94, 95, 96, + 97, 98, 99, -1, 101, 102, 103, 104, 105, 106, + 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, + 117, 118, -1, 120, 121, 122, 123, 124, 125, -1, + -1, 128, 129, 130, 131, -1, -1, 134, 135, 136, + 137, 138, -1, 140, 141, 142, -1, 144, 145, 146, + -1, 148, 149, 150, 151, 152, 153, 154, 155, 156, + 157, 158, 159, 160, 161, -1, 163, 164, 165, 166, + -1, 168, -1, 170, 171, -1, 173, 174, 175, 176, + 177, 178, -1, 180, -1, 182, 183, 184, 185, -1, + 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, + 197, 198, -1, 200, 201, 202, 203, 204, 205, 206, + -1, 208, 209, 210, 211, 212, 213, 214, 215, 216, + 217, -1, 219, -1, 221, 222, 223, 224, 225, 226, + 227, 228, 229, 230, 231, -1, -1, 234, 235, 236, + 237, -1, 239, 240, 241, 242, 243, 244, 245, 246, + 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, + 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, + 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, + 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, + -1, 288, 289, -1, -1, 292, 293, 294, -1, -1, + 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, + 307, 308, 309, 310, 311, 312, 313, 314, -1, -1, + -1, -1, 319, 320, 321, 322, 323, 324, 325, 326, + 327, 328, -1, 330, 331, 332, 333, 334, 335, -1, + 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, + -1, 348, 349, 350, 351, 352, 353, 354, 355, 356, + 357, 358, 359, 360, -1, 362, 363, 364, 365, 366, + 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, + 377, 378, 379, 380, 381, -1, 383, 384, 385, 386, + 387, 388, 389, 390, 391, 392, -1, 394, 395, 396, + 397, 398, -1, 400, 401, 402, 403, 404, 405, 406, + 407, 408, 409, 410, 411, 412, 413, 414, -1, -1, + 417, 418, -1, 420, 421, 422, 423, 424, 425, 426, + -1, 428, 429, 430, -1, -1, 433, 434, 435, 436, + 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, + -1, -1, 449, 450, 451, -1, 453, 454, 455, 456, + -1, 458, 459, 460, 461, 462, 463, 464, 465, -1, + 467, 468, 469, 470, 471, 472, 473, 474, 475, -1, + -1, 478, -1, -1, 481, 482, 483, 484, 485, 486, + 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, + 497, 498, 499, 500, 501, 502, -1, -1, -1, -1, + -1, -1, 509, 510, 511, -1, -1, -1, -1, 516, + -1, 518, -1, -1, -1, -1, -1, 524, 525, 526, + 527, 3, 4, 5, 6, 7, 8, 9, 10, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, 516, -1, 518, -1, -1, -1, -1, -1, - 524, 525, 526, 527, 3, 4, 5, 6, 7, -1, - 9, 10, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 22, 23, 24, 25, 26, 27, 28, - 29, -1, 31, 32, 33, -1, -1, -1, -1, -1, - 39, -1, -1, 42, 43, 44, -1, 46, 47, 48, - 49, 50, 51, 52, 53, 54, 55, 56, 57, -1, - 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, - 69, 70, 71, 72, 73, -1, 75, 76, 77, 78, - 79, -1, 81, -1, 83, 84, 85, 86, 87, 88, - 89, 90, 91, 92, -1, 94, 95, 96, 97, 98, - 99, -1, 101, 102, 103, 104, 105, 106, 107, 108, - 109, 110, 111, 112, 113, 114, 115, 116, -1, 118, - -1, 120, 121, 122, 123, 124, 125, -1, -1, 128, - 129, 130, 131, -1, -1, 134, 135, 136, 137, 138, - -1, 140, 141, 142, -1, 144, 145, 146, -1, 148, - 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, - 159, 160, 161, -1, 163, 164, 165, 166, -1, 168, - -1, 170, 171, -1, 173, 174, 175, 176, 177, 178, - -1, 180, -1, 182, 183, 184, 185, -1, 187, 188, - 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, - -1, 200, 201, 202, 203, 204, 205, 206, -1, 208, - 209, 210, 211, 212, 213, 214, 215, 216, 217, -1, - 219, -1, 221, 222, 223, 224, 225, 226, 227, 228, - 229, 230, 231, -1, -1, 234, 235, 236, 237, -1, - 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, - 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, - 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, - 269, 270, 271, 272, 273, 274, -1, 276, 277, 278, - 279, 280, 281, 282, 283, 284, 285, 286, -1, 288, - 289, -1, -1, 292, 293, 294, -1, -1, 297, 298, - 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, - 309, 310, 311, 312, 313, 314, -1, -1, -1, -1, - 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, - -1, 330, 331, 332, 333, 334, 335, -1, 337, 338, - 339, 340, 341, 342, 343, 344, 345, 346, -1, 348, - 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, - 359, 360, -1, 362, 363, 364, 365, 366, 367, 368, - 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, - 379, 380, 381, -1, -1, 384, 385, 386, 387, 388, - 389, 390, 391, 392, -1, 394, 395, 396, 397, 398, - -1, 400, 401, 402, 403, 404, 405, 406, 407, 408, - 409, 410, 411, 412, 413, 414, -1, -1, 417, 418, - -1, 420, 421, 422, 423, 424, 425, 426, -1, 428, - 429, 430, -1, -1, 433, 434, 435, 436, 437, 438, - 439, 440, 441, 442, 443, 444, 445, 446, -1, -1, - 449, 450, 451, -1, 453, 454, 455, 456, -1, 458, - 459, 460, 461, 462, 463, 464, 465, -1, 467, 468, - 469, 470, 471, 472, 473, 474, 475, -1, -1, 478, - -1, -1, 481, 482, 483, 484, 485, 486, 487, 488, - 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, - 499, 500, 501, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 516, -1, 518, - -1, -1, -1, -1, -1, 524, 525, 526, 527, 3, - 4, 5, 6, 7, -1, 9, 10, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 22, 23, - 24, 25, 26, 27, 28, 29, -1, 31, 32, 33, - -1, -1, -1, -1, -1, 39, -1, -1, 42, 43, - 44, -1, 46, 47, 48, 49, 50, 51, 52, 53, - 54, 55, 56, 57, -1, 59, 60, 61, 62, 63, - 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, - -1, 75, 76, 77, 78, 79, -1, 81, -1, 83, - 84, 85, 86, 87, 88, 89, 90, 91, 92, -1, - 94, 95, 96, 97, 98, 99, -1, 101, 102, 103, - 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, - 114, 115, 116, -1, 118, -1, 120, 121, 122, 123, - 124, 125, -1, -1, 128, 129, 130, 131, -1, -1, - 134, 135, 136, 137, 138, -1, 140, 141, 142, -1, - 144, 145, 146, -1, 148, 149, 150, 151, 152, 153, - 154, 155, 156, 157, 158, 159, 160, 161, -1, 163, - 164, 165, 166, -1, 168, -1, 170, 171, -1, 173, - 174, 175, 176, 177, 178, -1, 180, -1, 182, 183, - 184, 185, -1, 187, 188, 189, 190, 191, 192, 193, - 194, 195, 196, 197, 198, -1, 200, 201, 202, 203, - 204, 205, 206, -1, 208, 209, 210, 211, 212, 213, - 214, 215, 216, 217, -1, 219, -1, 221, 222, 223, - 224, 225, 226, 227, 228, 229, 230, 231, -1, -1, - 234, 235, 236, 237, -1, 239, 240, 241, 242, 243, - 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, - 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, - 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, - 274, -1, 276, 277, 278, 279, 280, 281, 282, 283, - 284, 285, 286, -1, 288, 289, -1, -1, 292, 293, - 294, -1, -1, 297, 298, 299, 300, 301, 302, 303, - 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, - 314, -1, -1, -1, -1, 319, 320, 321, 322, 323, - 324, 325, 326, 327, 328, -1, 330, 331, 332, 333, - 334, 335, -1, 337, 338, 339, 340, 341, 342, 343, - 344, 345, 346, -1, 348, 349, 350, 351, 352, 353, - 354, 355, 356, 357, 358, 359, 360, -1, 362, 363, - 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, - 374, 375, 376, 377, 378, 379, 380, 381, -1, -1, - 384, 385, 386, 387, 388, 389, 390, 391, 392, -1, - 394, 395, 396, 397, 398, -1, 400, 401, 402, 403, - 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, - 414, -1, -1, 417, 418, -1, 420, 421, 422, 423, - 424, 425, 426, -1, 428, 429, 430, -1, -1, 433, - 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, - 444, 445, 446, -1, -1, 449, 450, 451, -1, 453, - 454, 455, 456, -1, 458, 459, 460, 461, 462, 463, - 464, 465, -1, 467, 468, 469, 470, 471, 472, 473, - 474, 475, -1, -1, 478, -1, -1, 481, 482, 483, - 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, - 494, 495, 496, 497, 498, 499, 500, 501, -1, -1, + 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, + 32, 33, -1, -1, -1, -1, -1, 39, -1, -1, + 42, 43, 44, -1, 46, 47, 48, 49, 50, 51, + 52, 53, 54, 55, 56, 57, -1, 59, 60, 61, + 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, + 72, 73, -1, 75, 76, 77, 78, 79, -1, 81, + -1, 83, 84, 85, 86, 87, 88, 89, 90, 91, + 92, -1, 94, 95, 96, 97, 98, 99, -1, 101, + 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, + 112, 113, 114, 115, 116, 117, 118, -1, 120, 121, + 122, 123, 124, 125, -1, -1, 128, 129, 130, 131, + -1, -1, 134, 135, 136, 137, 138, -1, 140, 141, + 142, -1, 144, 145, 146, -1, 148, 149, 150, 151, + 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, + -1, 163, 164, 165, 166, -1, 168, -1, 170, 171, + -1, 173, 174, 175, 176, 177, 178, -1, 180, -1, + 182, 183, 184, 185, -1, 187, 188, 189, 190, 191, + 192, 193, 194, 195, 196, 197, 198, -1, 200, 201, + 202, 203, 204, 205, 206, -1, 208, 209, 210, 211, + 212, 213, 214, 215, 216, 217, -1, 219, -1, 221, + 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, + -1, -1, 234, 235, 236, 237, -1, 239, 240, 241, + 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, + 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, + 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, + 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, + 282, 283, 284, 285, 286, -1, 288, 289, -1, -1, + 292, 293, 294, -1, -1, 297, 298, 299, 300, 301, + 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, + 312, 313, 314, -1, -1, -1, -1, 319, 320, 321, + 322, 323, 324, 325, 326, 327, 328, -1, 330, 331, + 332, 333, 334, 335, -1, 337, 338, 339, 340, 341, + 342, 343, 344, 345, 346, -1, 348, 349, 350, 351, + 352, 353, 354, 355, 356, 357, 358, 359, 360, -1, + 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, + 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, + -1, -1, 384, 385, 386, 387, 388, 389, 390, 391, + 392, -1, 394, 395, 396, 397, 398, -1, 400, 401, + 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, + 412, 413, 414, -1, -1, 417, 418, -1, 420, 421, + 422, 423, 424, 425, 426, -1, 428, 429, 430, -1, + -1, 433, 434, 435, 436, 437, 438, 439, 440, 441, + 442, 443, 444, 445, 446, -1, -1, 449, 450, 451, + -1, 453, 454, 455, 456, -1, 458, 459, 460, 461, + 462, 463, 464, 465, -1, 467, 468, 469, 470, 471, + 472, 473, 474, 475, -1, -1, 478, -1, -1, 481, + 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, + 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, + 502, -1, -1, -1, -1, -1, -1, 509, 510, 511, + -1, -1, -1, -1, 516, -1, 518, -1, -1, -1, + -1, -1, 524, 525, 526, 527, 3, 4, 5, 6, + 7, 8, 9, 10, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 22, 23, 24, 25, 26, + 27, 28, 29, 30, 31, 32, 33, -1, -1, -1, + -1, -1, 39, -1, -1, 42, 43, 44, -1, 46, + 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, + 57, -1, 59, 60, 61, 62, 63, 64, 65, 66, + 67, 68, 69, 70, 71, 72, 73, -1, 75, 76, + 77, 78, 79, -1, 81, -1, 83, 84, 85, 86, + 87, 88, 89, 90, 91, 92, -1, 94, 95, 96, + 97, 98, 99, -1, 101, 102, 103, 104, 105, 106, + 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, + 117, 118, -1, 120, 121, 122, 123, 124, 125, -1, + -1, 128, 129, 130, 131, -1, -1, 134, 135, 136, + 137, 138, -1, 140, 141, 142, -1, 144, 145, 146, + -1, 148, 149, 150, 151, 152, 153, 154, 155, 156, + 157, 158, 159, 160, 161, -1, 163, 164, 165, 166, + -1, 168, -1, 170, 171, -1, 173, 174, 175, 176, + 177, 178, -1, 180, -1, 182, 183, 184, 185, -1, + 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, + 197, 198, -1, 200, 201, 202, 203, 204, 205, 206, + -1, 208, 209, 210, 211, 212, 213, 214, 215, 216, + 217, -1, 219, -1, 221, 222, 223, 224, 225, 226, + 227, 228, 229, 230, 231, -1, -1, 234, 235, 236, + 237, -1, 239, 240, 241, 242, 243, 244, 245, 246, + 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, + 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, + 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, + 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, + -1, 288, 289, -1, -1, 292, 293, 294, -1, -1, + 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, + 307, 308, 309, 310, 311, 312, 313, 314, -1, -1, + -1, -1, 319, 320, 321, 322, 323, 324, 325, 326, + 327, 328, -1, 330, 331, 332, 333, 334, 335, -1, + 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, + -1, 348, 349, 350, 351, 352, 353, 354, 355, 356, + 357, 358, 359, 360, -1, 362, 363, 364, 365, 366, + 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, + 377, 378, 379, 380, 381, -1, -1, 384, 385, 386, + 387, 388, 389, 390, 391, 392, -1, 394, 395, 396, + 397, 398, -1, 400, 401, 402, 403, 404, 405, 406, + 407, 408, 409, 410, 411, 412, 413, 414, -1, -1, + 417, 418, -1, 420, 421, 422, 423, 424, 425, 426, + -1, 428, 429, 430, -1, -1, 433, 434, 435, 436, + 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, + -1, -1, 449, 450, 451, -1, 453, 454, 455, 456, + -1, 458, 459, 460, 461, 462, 463, 464, 465, -1, + 467, 468, 469, 470, 471, 472, 473, 474, 475, -1, + -1, 478, -1, -1, 481, 482, 483, 484, 485, 486, + 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, + 497, 498, 499, 500, 501, 502, -1, -1, -1, -1, + -1, -1, 509, 510, 511, -1, -1, -1, -1, 516, + -1, 518, -1, -1, -1, -1, -1, 524, 525, 526, + 527, 3, 4, 5, 6, 7, 8, 9, 10, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 22, 23, 24, 25, 26, 27, 28, 29, -1, 31, + 32, 33, -1, -1, -1, -1, -1, 39, -1, -1, + 42, 43, 44, -1, 46, 47, 48, 49, 50, 51, + 52, 53, 54, 55, 56, 57, -1, 59, 60, 61, + 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, + 72, 73, -1, 75, 76, 77, 78, 79, -1, 81, + -1, 83, 84, 85, 86, 87, 88, 89, 90, 91, + 92, -1, 94, 95, 96, 97, 98, 99, -1, 101, + 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, + 112, 113, 114, 115, 116, 117, 118, -1, 120, 121, + 122, 123, 124, 125, -1, -1, 128, 129, 130, 131, + -1, -1, 134, 135, 136, 137, 138, -1, 140, 141, + 142, -1, 144, 145, 146, -1, 148, 149, 150, 151, + 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, + -1, 163, 164, 165, 166, -1, 168, -1, 170, 171, + 172, 173, 174, 175, 176, 177, 178, -1, 180, -1, + 182, 183, 184, 185, -1, 187, 188, 189, 190, 191, + 192, 193, 194, 195, 196, 197, 198, -1, 200, 201, + 202, 203, 204, 205, 206, -1, 208, 209, 210, 211, + 212, 213, 214, 215, 216, 217, -1, 219, -1, 221, + 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, + -1, -1, 234, 235, 236, 237, -1, 239, 240, 241, + 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, + 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, + 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, + 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, + 282, 283, 284, 285, 286, -1, 288, 289, -1, -1, + 292, 293, 294, -1, -1, 297, 298, 299, 300, 301, + 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, + 312, 313, 314, -1, -1, -1, -1, 319, 320, 321, + 322, 323, 324, 325, 326, 327, 328, -1, 330, 331, + 332, 333, 334, 335, -1, 337, 338, 339, 340, 341, + 342, 343, 344, 345, 346, -1, 348, 349, 350, 351, + 352, 353, 354, 355, 356, 357, 358, 359, 360, -1, + 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, + 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, + -1, -1, 384, 385, 386, 387, 388, 389, 390, 391, + 392, -1, 394, 395, 396, 397, 398, -1, 400, 401, + 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, + 412, 413, 414, -1, -1, 417, 418, -1, 420, 421, + 422, 423, 424, 425, 426, -1, 428, 429, 430, -1, + -1, 433, 434, 435, 436, 437, 438, 439, 440, 441, + 442, 443, 444, 445, 446, -1, -1, 449, 450, 451, + -1, 453, 454, 455, 456, -1, 458, 459, 460, 461, + 462, 463, 464, 465, -1, 467, 468, 469, 470, 471, + 472, 473, 474, 475, -1, -1, 478, -1, -1, 481, + 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, + 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, + 502, -1, -1, -1, -1, -1, -1, 509, 510, 511, + -1, -1, -1, -1, 516, -1, 518, -1, -1, -1, + -1, -1, 524, 525, 526, 527, 3, 4, 5, 6, + 7, 8, 9, 10, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 22, 23, 24, 25, 26, + 27, 28, 29, -1, 31, 32, 33, -1, -1, -1, + -1, -1, 39, -1, -1, 42, 43, 44, -1, 46, + 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, + 57, -1, 59, 60, 61, 62, 63, 64, 65, 66, + 67, 68, 69, 70, 71, 72, 73, -1, 75, 76, + 77, 78, 79, -1, 81, -1, 83, 84, 85, 86, + 87, 88, 89, 90, 91, 92, -1, 94, 95, 96, + 97, 98, 99, -1, 101, 102, 103, 104, 105, 106, + 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, + 117, 118, -1, 120, 121, 122, 123, 124, 125, -1, + -1, 128, 129, 130, 131, -1, -1, 134, 135, 136, + 137, 138, -1, 140, 141, 142, -1, 144, 145, 146, + -1, 148, 149, 150, 151, 152, 153, 154, 155, 156, + 157, 158, 159, 160, 161, -1, 163, 164, 165, 166, + -1, 168, -1, 170, 171, -1, 173, 174, 175, 176, + 177, 178, -1, 180, -1, 182, 183, 184, 185, -1, + 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, + 197, 198, -1, 200, 201, 202, 203, 204, 205, 206, + -1, 208, 209, 210, 211, 212, 213, 214, 215, 216, + 217, -1, 219, -1, 221, 222, 223, 224, 225, 226, + 227, 228, 229, 230, 231, -1, -1, 234, 235, 236, + 237, -1, 239, 240, 241, 242, 243, 244, 245, 246, + 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, + 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, + 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, + 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, + -1, 288, 289, -1, -1, 292, 293, 294, -1, -1, + 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, + 307, 308, 309, 310, 311, 312, 313, 314, -1, -1, + -1, -1, 319, 320, 321, 322, 323, 324, 325, 326, + 327, 328, -1, 330, 331, 332, 333, 334, 335, -1, + 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, + -1, 348, 349, 350, 351, 352, 353, 354, 355, 356, + 357, 358, 359, 360, -1, 362, 363, 364, 365, 366, + 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, + 377, 378, 379, 380, 381, -1, -1, 384, 385, 386, + 387, 388, 389, 390, 391, 392, -1, 394, 395, 396, + 397, 398, -1, 400, 401, 402, 403, 404, 405, 406, + 407, 408, 409, 410, 411, 412, 413, 414, -1, -1, + 417, 418, -1, 420, 421, 422, 423, 424, 425, 426, + -1, 428, 429, 430, -1, -1, 433, 434, 435, 436, + 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, + -1, -1, 449, 450, 451, -1, 453, 454, 455, 456, + -1, 458, 459, 460, 461, 462, 463, 464, 465, -1, + 467, 468, 469, 470, 471, 472, 473, 474, 475, -1, + -1, 478, -1, -1, 481, 482, 483, 484, 485, 486, + 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, + 497, 498, 499, 500, 501, 502, -1, -1, -1, -1, + -1, -1, 509, 510, 511, -1, -1, -1, -1, 516, + -1, 518, 519, -1, -1, -1, -1, 524, 525, 526, + 527, 3, 4, 5, 6, 7, 8, 9, 10, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 22, 23, 24, 25, 26, 27, 28, 29, -1, 31, + 32, 33, -1, -1, -1, -1, -1, 39, -1, -1, + 42, 43, 44, -1, 46, 47, 48, 49, 50, 51, + 52, 53, 54, 55, 56, 57, -1, 59, 60, 61, + 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, + 72, 73, -1, 75, 76, 77, 78, 79, -1, 81, + -1, 83, 84, 85, 86, 87, 88, 89, 90, 91, + 92, -1, 94, 95, 96, 97, 98, 99, -1, 101, + 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, + 112, 113, 114, 115, 116, 117, 118, -1, 120, 121, + 122, 123, 124, 125, -1, -1, 128, 129, 130, 131, + -1, -1, 134, 135, 136, 137, 138, -1, 140, 141, + 142, -1, 144, 145, 146, -1, 148, 149, 150, 151, + 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, + -1, 163, 164, 165, 166, -1, 168, -1, 170, 171, + -1, 173, 174, 175, 176, 177, 178, -1, 180, -1, + 182, 183, 184, 185, -1, 187, 188, 189, 190, 191, + 192, 193, 194, 195, 196, 197, 198, -1, 200, 201, + 202, 203, 204, 205, 206, -1, 208, 209, 210, 211, + 212, 213, 214, 215, 216, 217, -1, 219, -1, 221, + 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, + -1, -1, 234, 235, 236, 237, -1, 239, 240, 241, + 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, + 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, + 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, + 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, + 282, 283, 284, 285, 286, -1, 288, 289, -1, -1, + 292, 293, 294, -1, -1, 297, 298, 299, 300, 301, + 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, + 312, 313, 314, -1, -1, -1, -1, 319, 320, 321, + 322, 323, 324, 325, 326, 327, 328, -1, 330, 331, + 332, 333, 334, 335, -1, 337, 338, 339, 340, 341, + 342, 343, 344, 345, 346, -1, 348, 349, 350, 351, + 352, 353, 354, 355, 356, 357, 358, 359, 360, -1, + 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, + 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, + -1, -1, 384, 385, 386, 387, 388, 389, 390, 391, + 392, -1, 394, 395, 396, 397, 398, -1, 400, 401, + 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, + 412, 413, 414, -1, -1, 417, 418, -1, 420, 421, + 422, 423, 424, 425, 426, -1, 428, 429, 430, -1, + -1, 433, 434, 435, 436, 437, 438, 439, 440, 441, + 442, 443, 444, 445, 446, -1, -1, 449, 450, 451, + -1, 453, 454, 455, 456, -1, 458, 459, 460, 461, + 462, 463, 464, 465, -1, 467, 468, 469, 470, 471, + 472, 473, 474, 475, -1, -1, 478, -1, -1, 481, + 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, + 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, + 502, -1, -1, -1, -1, -1, -1, 509, 510, 511, + -1, -1, -1, -1, 516, -1, 518, -1, -1, -1, + -1, 523, 524, 525, 526, 527, 3, 4, 5, 6, + 7, 8, 9, 10, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 22, 23, 24, 25, 26, + 27, 28, 29, -1, 31, 32, 33, -1, -1, -1, + -1, -1, 39, -1, -1, 42, 43, 44, -1, 46, + 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, + 57, -1, 59, 60, 61, 62, 63, 64, 65, 66, + 67, 68, 69, 70, 71, 72, 73, -1, 75, 76, + 77, 78, 79, -1, 81, -1, 83, 84, 85, 86, + 87, 88, 89, 90, 91, 92, -1, 94, 95, 96, + 97, 98, 99, -1, 101, 102, 103, 104, 105, 106, + 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, + 117, 118, -1, 120, 121, 122, 123, 124, 125, -1, + -1, 128, 129, 130, 131, -1, -1, 134, 135, 136, + 137, 138, -1, 140, 141, 142, -1, 144, 145, 146, + -1, 148, 149, 150, 151, 152, 153, 154, 155, 156, + 157, 158, 159, 160, 161, -1, 163, 164, 165, 166, + -1, 168, -1, 170, 171, -1, 173, 174, 175, 176, + 177, 178, -1, 180, -1, 182, 183, 184, 185, -1, + 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, + 197, 198, -1, 200, 201, 202, 203, 204, 205, 206, + -1, 208, 209, 210, 211, 212, 213, 214, 215, 216, + 217, -1, 219, -1, 221, 222, 223, 224, 225, 226, + 227, 228, 229, 230, 231, -1, -1, 234, 235, 236, + 237, -1, 239, 240, 241, 242, 243, 244, 245, 246, + 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, + 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, + 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, + 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, + -1, 288, 289, -1, -1, 292, 293, 294, -1, -1, + 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, + 307, 308, 309, 310, 311, 312, 313, 314, -1, -1, + -1, -1, 319, 320, 321, 322, 323, 324, 325, 326, + 327, 328, -1, 330, 331, 332, 333, 334, 335, -1, + 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, + -1, 348, 349, 350, 351, 352, 353, 354, 355, 356, + 357, 358, 359, 360, -1, 362, 363, 364, 365, 366, + 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, + 377, 378, 379, 380, 381, -1, -1, 384, 385, 386, + 387, 388, 389, 390, 391, 392, -1, 394, 395, 396, + 397, 398, -1, 400, 401, 402, 403, 404, 405, 406, + 407, 408, 409, 410, 411, 412, 413, 414, -1, -1, + 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, + -1, 428, 429, 430, -1, -1, 433, 434, 435, 436, + 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, + -1, -1, 449, 450, 451, -1, 453, 454, 455, 456, + -1, 458, 459, 460, 461, 462, 463, 464, 465, -1, + 467, 468, 469, 470, 471, 472, 473, 474, 475, -1, + -1, 478, -1, -1, 481, 482, 483, 484, 485, 486, + 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, + 497, 498, 499, 500, 501, 502, -1, -1, -1, -1, + -1, -1, 509, 510, 511, -1, -1, -1, -1, 516, + -1, 518, -1, -1, -1, -1, -1, 524, 525, 526, + 527, 3, 4, 5, 6, 7, 8, 9, 10, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, 516, -1, 518, -1, -1, -1, -1, -1, - 524, 525, 526, 527, 3, 4, 5, 6, 7, 8, - 9, 10, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 22, 23, 24, 25, 26, 27, 28, - 29, -1, 31, 32, 33, -1, -1, -1, -1, -1, - 39, -1, -1, 42, 43, 44, -1, 46, 47, 48, - 49, 50, 51, 52, -1, 54, 55, 56, 57, -1, - 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, - 69, 70, 71, 72, 73, -1, 75, 76, 77, 78, - 79, -1, 81, -1, 83, 84, 85, 86, 87, 88, - 89, 90, 91, 92, -1, 94, 95, 96, 97, 98, - 99, -1, 101, 102, 103, 104, 105, 106, 107, 108, - 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, - -1, 120, 121, 122, 123, 124, 125, -1, -1, 128, - 129, 130, 131, -1, -1, 134, 135, 136, 137, 138, - -1, 140, 141, 142, -1, 144, -1, 146, -1, 148, - 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, - 159, 160, 161, -1, 163, 164, 165, 166, -1, 168, - -1, 170, 171, -1, 173, 174, 175, 176, -1, 178, - -1, 180, -1, 182, 183, 184, 185, -1, 187, 188, - 189, 190, 191, 192, 193, -1, 195, 196, 197, 198, - -1, 200, 201, 202, 203, 204, 205, 206, -1, 208, - 209, 210, 211, 212, 213, 214, 215, 216, 217, -1, - 219, -1, 221, -1, -1, 224, 225, 226, 227, 228, - 229, 230, 231, -1, -1, 234, 235, 236, -1, -1, - 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, - 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, - 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, - 269, 270, 271, 272, 273, 274, -1, 276, 277, -1, - 279, 280, 281, 282, 283, 284, 285, 286, -1, 288, - 289, -1, -1, 292, 293, 294, -1, -1, 297, 298, - 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, - 309, 310, 311, 312, 313, 314, -1, -1, -1, -1, - 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, - -1, 330, 331, 332, 333, 334, 335, -1, 337, 338, - 339, 340, 341, 342, 343, 344, 345, 346, -1, 348, - 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, - 359, 360, -1, 362, 363, 364, 365, 366, 367, 368, - 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, - 379, 380, 381, -1, -1, 384, 385, 386, 387, 388, - 389, 390, 391, 392, -1, -1, 395, 396, 397, 398, - -1, 400, 401, 402, 403, 404, 405, 406, 407, 408, - 409, 410, 411, 412, 413, 414, -1, -1, 417, 418, - -1, 420, 421, 422, 423, 424, 425, 426, -1, 428, - 429, 430, -1, -1, 433, 434, 435, 436, 437, 438, - 439, 440, 441, 442, 443, 444, 445, 446, -1, -1, - 449, 450, 451, -1, 453, 454, 455, 456, -1, 458, - 459, 460, 461, 462, 463, 464, 465, -1, 467, 468, - 469, 470, 471, 472, 473, 474, 475, -1, -1, 478, - -1, -1, 481, 482, 483, 484, 485, 486, 487, 488, - 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, - 499, 500, 501, -1, -1, -1, -1, -1, -1, -1, - 509, 510, 511, -1, 3, 4, 5, 516, -1, 518, - 9, -1, -1, -1, -1, 524, 525, 526, 527, -1, - -1, -1, -1, 22, 23, 24, 25, 26, 27, 28, - 29, -1, 31, 32, 33, -1, -1, -1, 37, -1, - -1, -1, -1, 42, 43, 44, -1, 46, 47, 48, - 49, 50, 51, 52, 53, 54, 55, 56, 57, -1, - 59, 60, 61, 62, 63, 64, -1, -1, 67, 68, - 69, 70, 71, 72, 73, -1, 75, 76, 77, 78, - 79, -1, 81, -1, 83, 84, 85, 86, 87, 88, - 89, 90, 91, 92, -1, 94, 95, 96, 97, 98, - 99, -1, 101, 102, 103, 104, 105, 106, 107, 108, - 109, 110, 111, 112, 113, 114, 115, 116, -1, 118, - -1, 120, 121, 122, 123, 124, 125, -1, -1, 128, - 129, 130, 131, -1, -1, 134, 135, 136, 137, 138, - -1, 140, 141, 142, -1, 144, 145, 146, -1, 148, - 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, - 159, 160, 161, -1, 163, 164, 165, 166, -1, 168, - -1, 170, 171, -1, 173, 174, 175, 176, 177, 178, - -1, 180, -1, 182, 183, 184, 185, -1, 187, 188, - 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, - -1, 200, 201, 202, 203, 204, 205, 206, -1, 208, - 209, 210, 211, 212, 213, 214, 215, 216, 217, -1, - 219, -1, 221, 222, 223, 224, 225, 226, 227, 228, - 229, 230, 231, -1, -1, 234, 235, 236, 237, -1, - 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, - 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, - 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, - 269, 270, 271, 272, 273, 274, -1, 276, 277, 278, - 279, -1, 281, 282, 283, 284, 285, 286, -1, 288, - 289, 290, -1, 292, 293, 294, -1, -1, 297, 298, - 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, - 309, 310, 311, 312, 313, 314, -1, -1, -1, -1, - 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, - -1, 330, 331, 332, 333, 334, 335, -1, 337, 338, - 339, 340, 341, 342, 343, 344, 345, 346, -1, 348, - 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, - 359, 360, -1, 362, 363, 364, 365, 366, 367, 368, - 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, - 379, 380, 381, -1, 383, 384, 385, 386, 387, 388, - 389, 390, 391, 392, -1, 394, 395, 396, 397, 398, - -1, 400, 401, 402, 403, 404, 405, 406, 407, 408, - 409, 410, 411, 412, 413, 414, -1, -1, 417, 418, - -1, 420, 421, 422, 423, 424, 425, 426, -1, 428, - 429, 430, -1, -1, 433, 434, 435, 436, 437, 438, - 439, 440, 441, 442, 443, 444, 445, 446, -1, -1, - 449, 450, 451, -1, 453, 454, 455, 456, -1, 458, - 459, 460, 461, 462, 463, 464, 465, -1, 467, 468, - 469, 470, 471, 472, 473, 474, 475, -1, -1, 478, - -1, -1, 481, 482, 483, 484, 485, 486, 487, 488, - 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, - 499, 500, 501, -1, -1, -1, -1, -1, -1, -1, - 509, 510, 511, 3, -1, -1, -1, 516, -1, 518, - 10, -1, -1, -1, -1, -1, -1, -1, 527, -1, - -1, -1, 22, 23, 24, 25, 26, 27, 28, 29, - -1, 31, 32, 33, -1, -1, -1, -1, -1, 39, - -1, -1, 42, 43, 44, -1, 46, 47, 48, 49, - 50, 51, 52, 53, 54, 55, 56, 57, -1, 59, - 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, - 70, 71, 72, 73, -1, 75, 76, 77, 78, 79, - -1, 81, -1, 83, 84, 85, 86, 87, 88, 89, - 90, 91, 92, -1, 94, 95, 96, 97, 98, 99, - -1, 101, 102, 103, 104, 105, 106, 107, 108, 109, - 110, 111, 112, 113, 114, 115, 116, -1, 118, -1, - 120, 121, 122, 123, 124, 125, -1, -1, 128, 129, - 130, 131, -1, -1, 134, 135, 136, 137, 138, -1, - 140, 141, 142, -1, 144, 145, 146, -1, 148, 149, - 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, - -1, 161, -1, 163, 164, 165, 166, -1, 168, -1, - 170, 171, -1, 173, 174, 175, 176, 177, 178, -1, - 180, -1, 182, 183, 184, 185, -1, 187, 188, 189, - 190, 191, 192, 193, 194, 195, 196, 197, 198, -1, - 200, 201, 202, 203, 204, 205, 206, -1, 208, 209, - 210, 211, 212, 213, 214, 215, 216, 217, -1, 219, - -1, 221, 222, 223, 224, 225, 226, 227, 228, 229, - 230, 231, -1, -1, 234, 235, 236, 237, -1, 239, - 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, - 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, - 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, - 270, 271, 272, 273, 274, -1, 276, 277, 278, 279, - -1, 281, 282, 283, 284, 285, 286, -1, 288, 289, - -1, -1, 292, 293, 294, -1, -1, 297, 298, 299, - 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, - 310, 311, 312, 313, 314, -1, -1, -1, -1, 319, - 320, 321, 322, 323, 324, 325, 326, 327, 328, -1, - 330, 331, 332, 333, 334, 335, -1, 337, 338, 339, - 340, 341, 342, 343, 344, 345, 346, -1, 348, 349, - 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, - 360, -1, 362, 363, 364, 365, 366, 367, 368, 369, - 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, - 380, 381, -1, -1, 384, 385, 386, 387, 388, 389, - 390, 391, 392, -1, 394, 395, 396, 397, 398, -1, - 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, - 410, 411, 412, 413, 414, -1, -1, 417, 418, -1, - 420, 421, 422, 423, 424, 425, 426, -1, 428, 429, - 430, -1, -1, 433, 434, 435, 436, 437, -1, 439, - 440, 441, 442, 443, 444, 445, 446, -1, -1, 449, - 450, 451, -1, 453, 454, 455, 456, -1, 458, 459, - 460, 461, 462, 463, 464, 465, -1, 467, 468, 469, - 470, 471, 472, 473, 474, 475, -1, -1, 478, -1, - -1, 481, 482, 483, 484, 485, 486, 487, 488, 489, - 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, - 500, 501, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 3, 4, -1, 516, -1, 518, 9, - 10, -1, -1, -1, 524, 525, 526, 527, -1, -1, - -1, -1, 22, 23, 24, 25, 26, 27, 28, 29, - -1, 31, 32, 33, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 43, 44, -1, 46, 47, 48, -1, - 50, 51, 52, 53, 54, -1, 56, 57, -1, 59, - 60, 61, 62, 63, 64, -1, -1, 67, 68, 69, - 70, 71, 72, 73, -1, 75, 76, 77, 78, 79, - -1, -1, -1, 83, 84, 85, 86, 87, 88, -1, - 90, 91, 92, -1, 94, 95, 96, 97, 98, 99, - -1, -1, 102, 103, 104, 105, 106, 107, 108, 109, - 110, 111, 112, 113, 114, 115, 116, -1, 118, -1, - 120, 121, 122, 123, 124, 125, -1, -1, 128, 129, - 130, 131, -1, -1, 134, 135, 136, 137, 138, -1, - 140, 141, 142, -1, 144, 145, 146, -1, 148, 149, - 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, - -1, 161, -1, 163, 164, 165, 166, -1, 168, -1, - 170, -1, -1, -1, 174, 175, 176, -1, 178, -1, - 180, -1, 182, 183, 184, 185, -1, 187, 188, 189, - 190, 191, 192, 193, -1, 195, 196, 197, 198, -1, - 200, 201, 202, 203, 204, 205, 206, -1, 208, -1, - 210, 211, 212, 213, 214, 215, 216, 217, -1, 219, - -1, 221, -1, -1, 224, -1, 226, 227, 228, 229, - 230, 231, -1, -1, 234, -1, 236, -1, -1, 239, - 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, - 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, - 260, 261, 262, 263, 264, 265, 266, 267, 268, -1, - 270, 271, 272, 273, 274, -1, 276, 277, -1, 279, - -1, 281, 282, 283, 284, 285, 286, -1, 288, 289, - -1, -1, 292, 293, 294, -1, -1, 297, 298, 299, - -1, 301, -1, 303, 304, 305, 306, 307, 308, 309, - 310, 311, 312, 313, 314, -1, -1, -1, -1, 319, - 320, 321, -1, 323, 324, 325, 326, 327, 328, -1, - 330, 331, 332, 333, 334, 335, -1, 337, 338, 339, - 340, 341, 342, 343, 344, 345, 346, -1, 348, 349, - 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, - 360, -1, 362, 363, -1, 365, 366, 367, 368, 369, - 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, - 380, 381, -1, -1, 384, 385, 386, 387, 388, 389, - 390, 391, 392, -1, -1, 395, 396, 397, 398, -1, - 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, - 410, 411, 412, 413, 414, -1, -1, 417, 418, -1, - 420, -1, 422, 423, 424, 425, 426, -1, 428, 429, - 430, -1, -1, 433, 434, 435, 436, 437, -1, 439, - 440, 441, 442, 443, 444, 445, 446, -1, -1, 449, - 450, 451, -1, 453, 454, 455, 456, -1, 458, 459, - 460, 461, 462, 463, 464, 465, -1, 467, -1, 469, - 470, 471, 472, 473, 474, 475, -1, -1, 478, -1, - -1, 481, 482, 483, 484, 485, 486, 487, 488, 489, - 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, - 500, 501, -1, -1, -1, -1, -1, 3, -1, -1, + 22, 23, 24, 25, 26, 27, 28, 29, -1, 31, + 32, 33, -1, -1, -1, -1, -1, 39, -1, -1, + 42, 43, 44, -1, 46, 47, 48, 49, 50, 51, + 52, 53, 54, 55, 56, 57, -1, 59, 60, 61, + 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, + 72, 73, -1, 75, 76, 77, 78, 79, -1, 81, + -1, 83, 84, 85, 86, 87, 88, 89, 90, 91, + 92, -1, 94, 95, 96, 97, 98, 99, -1, 101, + 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, + 112, 113, 114, 115, 116, 117, 118, -1, 120, 121, + 122, 123, 124, 125, -1, -1, 128, 129, 130, 131, + -1, -1, 134, 135, 136, 137, 138, -1, 140, 141, + 142, -1, 144, 145, 146, -1, 148, 149, 150, 151, + 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, + -1, 163, 164, 165, 166, -1, 168, -1, 170, 171, + -1, 173, 174, 175, 176, 177, 178, -1, 180, -1, + 182, 183, 184, 185, -1, 187, 188, 189, 190, 191, + 192, 193, 194, 195, 196, 197, 198, -1, 200, 201, + 202, 203, 204, 205, 206, -1, 208, 209, 210, 211, + 212, 213, 214, 215, 216, 217, -1, 219, -1, 221, + 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, + -1, -1, 234, 235, 236, 237, -1, 239, 240, 241, + 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, + 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, + 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, + 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, + 282, 283, 284, 285, 286, -1, 288, 289, -1, -1, + 292, 293, 294, -1, -1, 297, 298, 299, 300, 301, + 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, + 312, 313, 314, -1, -1, -1, -1, 319, 320, 321, + 322, 323, 324, 325, 326, 327, 328, -1, 330, 331, + 332, 333, 334, 335, -1, 337, 338, 339, 340, 341, + 342, 343, 344, 345, 346, -1, 348, 349, 350, 351, + 352, 353, 354, 355, 356, 357, 358, 359, 360, -1, + 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, + 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, + -1, -1, 384, 385, 386, 387, 388, 389, 390, 391, + 392, -1, 394, 395, 396, 397, 398, -1, 400, 401, + 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, + 412, 413, 414, -1, -1, 417, 418, -1, 420, 421, + 422, 423, 424, 425, 426, -1, 428, 429, 430, -1, + -1, 433, 434, 435, 436, 437, 438, 439, 440, 441, + 442, 443, 444, 445, 446, -1, -1, 449, 450, 451, + -1, 453, 454, 455, 456, -1, 458, 459, 460, 461, + 462, 463, 464, 465, -1, 467, 468, 469, 470, 471, + 472, 473, 474, 475, -1, 477, 478, -1, -1, 481, + 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, + 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, + 502, -1, -1, -1, -1, -1, -1, 509, 510, 511, + -1, -1, -1, -1, 516, -1, 518, -1, -1, -1, + -1, -1, 524, 525, 526, 527, 3, 4, 5, 6, + 7, 8, 9, 10, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 22, 23, 24, 25, 26, + 27, 28, 29, 30, 31, 32, 33, -1, -1, -1, + -1, -1, 39, -1, -1, 42, 43, 44, -1, 46, + 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, + 57, -1, 59, 60, 61, 62, 63, 64, 65, 66, + 67, 68, 69, 70, 71, 72, 73, -1, 75, 76, + 77, 78, 79, -1, 81, -1, 83, 84, 85, 86, + 87, 88, 89, 90, 91, 92, -1, 94, 95, 96, + 97, 98, 99, -1, 101, 102, 103, 104, 105, 106, + 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, + 117, 118, -1, 120, 121, 122, 123, 124, 125, -1, + -1, 128, 129, 130, 131, -1, -1, 134, 135, 136, + 137, 138, -1, 140, 141, 142, -1, 144, 145, 146, + -1, 148, 149, 150, 151, 152, 153, 154, 155, 156, + 157, 158, 159, 160, 161, -1, 163, 164, 165, 166, + -1, 168, -1, 170, 171, -1, 173, 174, 175, 176, + 177, 178, -1, 180, -1, 182, 183, 184, 185, -1, + 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, + 197, 198, -1, 200, 201, 202, 203, 204, 205, 206, + -1, 208, 209, 210, 211, 212, 213, 214, 215, 216, + 217, -1, 219, -1, 221, 222, 223, 224, 225, 226, + 227, 228, 229, 230, 231, -1, -1, 234, 235, 236, + 237, -1, 239, 240, 241, 242, 243, 244, 245, 246, + 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, + 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, + 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, + 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, + -1, 288, 289, -1, -1, 292, 293, 294, -1, -1, + 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, + 307, 308, 309, 310, 311, 312, 313, 314, -1, -1, + -1, -1, 319, 320, 321, 322, 323, 324, 325, 326, + 327, 328, -1, 330, 331, 332, 333, 334, 335, -1, + 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, + -1, 348, 349, 350, 351, 352, 353, 354, 355, 356, + 357, 358, 359, 360, -1, 362, 363, 364, 365, 366, + 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, + 377, 378, 379, 380, 381, -1, -1, 384, 385, 386, + 387, 388, 389, 390, 391, 392, -1, 394, 395, 396, + 397, 398, -1, 400, 401, 402, 403, 404, 405, 406, + 407, 408, 409, 410, 411, 412, 413, 414, -1, -1, + 417, 418, -1, 420, 421, 422, 423, 424, 425, 426, + -1, 428, 429, 430, -1, -1, 433, 434, 435, 436, + 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, + -1, -1, 449, 450, 451, -1, 453, 454, 455, 456, + -1, 458, 459, 460, 461, 462, 463, 464, 465, -1, + 467, 468, 469, 470, 471, 472, 473, 474, 475, -1, + -1, 478, -1, -1, 481, 482, 483, 484, 485, 486, + 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, + 497, 498, 499, 500, 501, 502, -1, -1, -1, -1, + -1, -1, 509, 510, 511, -1, -1, -1, -1, 516, + -1, 518, -1, -1, -1, -1, -1, 524, 525, 526, + 527, 3, 4, 5, 6, 7, 8, 9, 10, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, 524, 525, 22, 23, 24, 25, - 26, 27, 28, 29, -1, 31, 32, 33, -1, -1, - -1, -1, -1, -1, 40, -1, -1, 43, 44, -1, - 46, 47, 48, -1, 50, 51, 52, 53, 54, -1, - 56, 57, -1, 59, 60, 61, 62, 63, 64, -1, - -1, 67, 68, 69, 70, 71, 72, 73, -1, 75, - 76, 77, 78, 79, -1, -1, -1, 83, 84, 85, - 86, 87, 88, -1, 90, 91, 92, -1, 94, 95, - 96, 97, 98, 99, -1, -1, 102, 103, 104, 105, - 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, - 116, -1, 118, -1, 120, 121, 122, 123, 124, 125, - -1, -1, 128, 129, 130, 131, -1, -1, 134, 135, - 136, 137, 138, -1, 140, 141, 142, -1, 144, 145, - 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, - 156, 157, 158, 159, -1, 161, 162, 163, 164, 165, - 166, 167, 168, -1, 170, -1, -1, -1, 174, 175, - 176, -1, 178, -1, 180, -1, 182, 183, 184, 185, - -1, 187, 188, 189, 190, 191, 192, 193, -1, 195, - 196, 197, 198, -1, 200, 201, 202, 203, 204, 205, - 206, -1, 208, -1, 210, 211, 212, 213, 214, 215, - 216, 217, 218, 219, -1, 221, -1, -1, 224, -1, - 226, 227, 228, 229, 230, 231, -1, -1, 234, -1, - 236, -1, 238, 239, 240, 241, 242, 243, 244, 245, - 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, - 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, - 266, 267, 268, -1, 270, 271, 272, 273, 274, -1, - 276, 277, -1, 279, -1, 281, 282, 283, 284, 285, - 286, 287, 288, 289, -1, -1, 292, 293, 294, -1, - 296, 297, 298, 299, -1, 301, -1, 303, 304, 305, - 306, 307, 308, 309, 310, 311, 312, 313, 314, -1, - -1, -1, -1, 319, 320, 321, -1, 323, 324, 325, - 326, 327, 328, -1, 330, 331, 332, 333, 334, 335, - -1, 337, 338, 339, 340, 341, 342, 343, 344, 345, - 346, -1, 348, 349, 350, 351, 352, 353, 354, 355, - 356, 357, 358, 359, 360, -1, 362, 363, -1, 365, - 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, - 376, 377, 378, 379, 380, 381, -1, -1, 384, 385, - 386, 387, 388, 389, 390, 391, 392, -1, -1, 395, - 396, 397, 398, -1, 400, 401, 402, 403, 404, 405, - 406, 407, 408, 409, 410, 411, 412, 413, 414, -1, - -1, 417, 418, -1, 420, -1, 422, 423, 424, 425, - 426, -1, 428, 429, 430, -1, -1, 433, 434, 435, - 436, 437, -1, 439, 440, 441, 442, 443, 444, 445, - 446, 447, -1, 449, 450, 451, -1, 453, 454, 455, - 456, -1, 458, 459, 460, 461, 462, 463, 464, 465, - -1, 467, -1, 469, 470, 471, 472, 473, 474, 475, - -1, -1, 478, -1, -1, 481, 482, 483, 484, 485, - 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, - 496, 497, 498, 499, 500, 501, 3, -1, 5, -1, + 22, 23, 24, 25, 26, 27, 28, 29, -1, 31, + 32, 33, -1, -1, -1, -1, -1, 39, -1, -1, + 42, 43, 44, -1, 46, 47, 48, 49, 50, 51, + 52, 53, 54, 55, 56, 57, -1, 59, 60, 61, + 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, + 72, 73, -1, 75, 76, 77, 78, 79, -1, 81, + -1, 83, 84, 85, 86, 87, 88, 89, 90, 91, + 92, -1, 94, 95, 96, 97, 98, 99, -1, 101, + 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, + 112, 113, 114, 115, 116, 117, 118, -1, 120, 121, + 122, 123, 124, 125, -1, -1, 128, 129, 130, 131, + -1, -1, 134, 135, 136, 137, 138, -1, 140, 141, + 142, -1, 144, 145, 146, -1, 148, 149, 150, 151, + 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, + -1, 163, 164, 165, 166, -1, 168, -1, 170, 171, + -1, 173, 174, 175, 176, 177, 178, -1, 180, -1, + 182, 183, 184, 185, -1, 187, 188, 189, 190, 191, + 192, 193, 194, 195, 196, 197, 198, -1, 200, 201, + 202, 203, 204, 205, 206, -1, 208, 209, 210, 211, + 212, 213, 214, 215, 216, 217, -1, 219, -1, 221, + 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, + -1, -1, 234, 235, 236, 237, -1, 239, 240, 241, + 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, + 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, + 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, + 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, + 282, 283, 284, 285, 286, -1, 288, 289, -1, -1, + 292, 293, 294, -1, -1, 297, 298, 299, 300, 301, + 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, + 312, 313, 314, -1, -1, -1, -1, 319, 320, 321, + 322, 323, 324, 325, 326, 327, 328, -1, 330, 331, + 332, 333, 334, 335, -1, 337, 338, 339, 340, 341, + 342, 343, 344, 345, 346, -1, 348, 349, 350, 351, + 352, 353, 354, 355, 356, 357, 358, 359, 360, -1, + 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, + 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, + -1, -1, 384, 385, 386, 387, 388, 389, 390, 391, + 392, -1, 394, 395, 396, 397, 398, -1, 400, 401, + 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, + 412, 413, 414, -1, -1, 417, 418, -1, 420, 421, + 422, 423, 424, 425, 426, -1, 428, 429, 430, -1, + -1, 433, 434, 435, 436, 437, 438, 439, 440, 441, + 442, 443, 444, 445, 446, -1, -1, 449, 450, 451, + -1, 453, 454, 455, 456, -1, 458, 459, 460, 461, + 462, 463, 464, 465, -1, 467, 468, 469, 470, 471, + 472, 473, 474, 475, -1, -1, 478, -1, -1, 481, + 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, + 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, + 502, -1, -1, -1, -1, -1, -1, 509, 510, 511, + -1, -1, -1, -1, 516, -1, 518, -1, -1, -1, + -1, 523, 524, 525, 526, 527, 3, 4, 5, 6, + 7, 8, 9, 10, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 22, 23, 24, 25, 26, + 27, 28, 29, -1, 31, 32, 33, -1, -1, -1, + -1, -1, 39, -1, -1, 42, 43, 44, -1, 46, + 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, + 57, -1, 59, 60, 61, 62, 63, 64, 65, 66, + 67, 68, 69, 70, 71, 72, 73, -1, 75, 76, + 77, 78, 79, -1, 81, -1, 83, 84, 85, 86, + 87, 88, 89, 90, 91, 92, -1, 94, 95, 96, + 97, 98, 99, -1, 101, 102, 103, 104, 105, 106, + 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, + 117, 118, -1, 120, 121, 122, 123, 124, 125, -1, + -1, 128, 129, 130, 131, -1, -1, 134, 135, 136, + 137, 138, -1, 140, 141, 142, -1, 144, 145, 146, + -1, 148, 149, 150, 151, 152, 153, 154, 155, 156, + 157, 158, 159, 160, 161, -1, 163, 164, 165, 166, + -1, 168, -1, 170, 171, -1, 173, 174, 175, 176, + 177, 178, -1, 180, -1, 182, 183, 184, 185, -1, + 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, + 197, 198, -1, 200, 201, 202, 203, 204, 205, 206, + -1, 208, 209, 210, 211, 212, 213, 214, 215, 216, + 217, -1, 219, -1, 221, 222, 223, 224, 225, 226, + 227, 228, 229, 230, 231, -1, -1, 234, 235, 236, + 237, -1, 239, 240, 241, 242, 243, 244, 245, 246, + 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, + 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, + 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, + 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, + -1, 288, 289, -1, -1, 292, 293, 294, -1, -1, + 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, + 307, 308, 309, 310, 311, 312, 313, 314, -1, -1, + -1, -1, 319, 320, 321, 322, 323, 324, 325, 326, + 327, 328, -1, 330, 331, 332, 333, 334, 335, -1, + 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, + -1, 348, 349, 350, 351, 352, 353, 354, 355, 356, + 357, 358, 359, 360, -1, 362, 363, 364, 365, 366, + 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, + 377, 378, 379, 380, 381, -1, -1, 384, 385, 386, + 387, 388, 389, 390, 391, 392, -1, 394, 395, 396, + 397, 398, -1, 400, 401, 402, 403, 404, 405, 406, + 407, 408, 409, 410, 411, 412, 413, 414, -1, -1, + 417, 418, -1, 420, 421, 422, 423, 424, 425, 426, + -1, 428, 429, 430, -1, -1, 433, 434, 435, 436, + 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, + -1, -1, 449, 450, 451, -1, 453, 454, 455, 456, + -1, 458, 459, 460, 461, 462, 463, 464, 465, -1, + 467, 468, 469, 470, 471, 472, 473, 474, 475, -1, + -1, 478, -1, -1, 481, 482, 483, 484, 485, 486, + 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, + 497, 498, 499, 500, 501, 502, -1, -1, -1, -1, + -1, -1, 509, 510, 511, -1, -1, -1, -1, 516, + -1, 518, -1, -1, -1, -1, -1, 524, 525, 526, + 527, 3, 4, 5, 6, 7, 8, 9, 10, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 22, 23, 24, 25, 26, 27, 28, 29, -1, 31, + 32, 33, -1, -1, -1, -1, -1, 39, -1, -1, + 42, 43, 44, -1, 46, 47, 48, 49, 50, 51, + 52, 53, 54, 55, 56, 57, -1, 59, 60, 61, + 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, + 72, 73, -1, 75, 76, 77, 78, 79, -1, 81, + -1, 83, 84, 85, 86, 87, 88, 89, 90, 91, + 92, -1, 94, 95, 96, 97, 98, 99, -1, 101, + 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, + 112, 113, 114, 115, 116, 117, 118, -1, 120, 121, + 122, 123, 124, 125, -1, -1, 128, 129, 130, 131, + -1, -1, 134, 135, 136, 137, 138, -1, 140, 141, + 142, -1, 144, 145, 146, -1, 148, 149, 150, 151, + 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, + -1, 163, 164, 165, 166, -1, 168, -1, 170, 171, + -1, 173, 174, 175, 176, 177, 178, -1, 180, -1, + 182, 183, 184, 185, -1, 187, 188, 189, 190, 191, + 192, 193, 194, 195, 196, 197, 198, -1, 200, 201, + 202, 203, 204, 205, 206, -1, 208, 209, 210, 211, + 212, 213, 214, 215, 216, 217, -1, 219, -1, 221, + 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, + -1, -1, 234, 235, 236, 237, -1, 239, 240, 241, + 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, + 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, + 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, + 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, + 282, 283, 284, 285, 286, -1, 288, 289, -1, -1, + 292, 293, 294, -1, -1, 297, 298, 299, 300, 301, + 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, + 312, 313, 314, -1, -1, -1, -1, 319, 320, 321, + 322, 323, 324, 325, 326, 327, 328, -1, 330, 331, + 332, 333, 334, 335, -1, 337, 338, 339, 340, 341, + 342, 343, 344, 345, 346, -1, 348, 349, 350, 351, + 352, 353, 354, 355, 356, 357, 358, 359, 360, -1, + 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, + 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, + -1, -1, 384, 385, 386, 387, 388, 389, 390, 391, + 392, -1, 394, 395, 396, 397, 398, -1, 400, 401, + 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, + 412, 413, 414, -1, -1, 417, 418, -1, 420, 421, + 422, 423, 424, 425, 426, -1, 428, 429, 430, -1, + -1, 433, 434, 435, 436, 437, 438, 439, 440, 441, + 442, 443, 444, 445, 446, -1, -1, 449, 450, 451, + -1, 453, 454, 455, 456, -1, 458, 459, 460, 461, + 462, 463, 464, 465, -1, 467, 468, 469, 470, 471, + 472, 473, 474, 475, -1, -1, 478, -1, -1, 481, + 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, + 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, + 502, -1, -1, -1, -1, -1, -1, 509, 510, 511, + -1, -1, -1, -1, 516, -1, 518, -1, -1, -1, + -1, -1, 524, 525, 526, 527, 3, 4, 5, 6, + 7, 8, 9, 10, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 22, 23, 24, 25, 26, + 27, 28, 29, -1, 31, 32, 33, -1, -1, -1, + -1, -1, 39, -1, -1, 42, 43, 44, -1, 46, + 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, + 57, -1, 59, 60, 61, 62, 63, 64, 65, 66, + 67, 68, 69, 70, 71, 72, 73, -1, 75, 76, + 77, 78, 79, -1, 81, -1, 83, 84, 85, 86, + 87, 88, 89, 90, 91, 92, -1, 94, 95, 96, + 97, 98, 99, -1, 101, 102, 103, 104, 105, 106, + 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, + 117, 118, -1, 120, 121, 122, 123, 124, 125, -1, + -1, 128, 129, 130, 131, -1, -1, 134, 135, 136, + 137, 138, -1, 140, 141, 142, -1, 144, 145, 146, + -1, 148, 149, 150, 151, 152, 153, 154, 155, 156, + 157, 158, 159, 160, 161, -1, 163, 164, 165, 166, + -1, 168, -1, 170, 171, -1, 173, 174, 175, 176, + 177, 178, -1, 180, -1, 182, 183, 184, 185, -1, + 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, + 197, 198, -1, 200, 201, 202, 203, 204, 205, 206, + -1, 208, 209, 210, 211, 212, 213, 214, 215, 216, + 217, -1, 219, -1, 221, 222, 223, 224, 225, 226, + 227, 228, 229, 230, 231, -1, -1, 234, 235, 236, + 237, -1, 239, 240, 241, 242, 243, 244, 245, 246, + 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, + 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, + 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, + 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, + -1, 288, 289, -1, -1, 292, 293, 294, -1, -1, + 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, + 307, 308, 309, 310, 311, 312, 313, 314, -1, -1, + -1, -1, 319, 320, 321, 322, 323, 324, 325, 326, + 327, 328, -1, 330, 331, 332, 333, 334, 335, -1, + 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, + -1, 348, 349, 350, 351, 352, 353, 354, 355, 356, + 357, 358, 359, 360, -1, 362, 363, 364, 365, 366, + 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, + 377, 378, 379, 380, 381, -1, -1, 384, 385, 386, + 387, 388, 389, 390, 391, 392, -1, 394, 395, 396, + 397, 398, -1, 400, 401, 402, 403, 404, 405, 406, + 407, 408, 409, 410, 411, 412, 413, 414, -1, -1, + 417, 418, -1, 420, 421, 422, 423, 424, 425, 426, + -1, 428, 429, 430, -1, -1, 433, 434, 435, 436, + 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, + -1, -1, 449, 450, 451, -1, 453, 454, 455, 456, + -1, 458, 459, 460, 461, 462, 463, 464, 465, -1, + 467, 468, 469, 470, 471, 472, 473, 474, 475, -1, + -1, 478, -1, -1, 481, 482, 483, 484, 485, 486, + 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, + 497, 498, 499, 500, 501, 502, -1, -1, -1, -1, + -1, -1, 509, 510, 511, -1, -1, -1, -1, 516, + -1, 518, -1, -1, -1, -1, -1, 524, 525, 526, + 527, 3, 4, 5, 6, 7, 8, 9, 10, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 22, 23, 24, 25, 26, 27, 28, 29, -1, 31, + 32, 33, -1, -1, -1, -1, -1, 39, -1, -1, + 42, 43, 44, -1, 46, 47, 48, 49, 50, 51, + 52, 53, 54, 55, 56, 57, -1, 59, 60, 61, + 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, + 72, 73, -1, 75, 76, 77, 78, 79, -1, 81, + -1, 83, 84, 85, 86, 87, 88, 89, 90, 91, + 92, -1, 94, 95, 96, 97, 98, 99, -1, 101, + 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, + 112, 113, 114, 115, 116, 117, 118, -1, 120, 121, + 122, 123, 124, 125, -1, -1, 128, 129, 130, 131, + -1, -1, 134, 135, 136, 137, 138, -1, 140, 141, + 142, -1, 144, 145, 146, -1, 148, 149, 150, 151, + 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, + -1, 163, 164, 165, 166, -1, 168, -1, 170, 171, + -1, 173, 174, 175, 176, 177, 178, -1, 180, -1, + 182, 183, 184, 185, -1, 187, 188, 189, 190, 191, + 192, 193, 194, 195, 196, 197, 198, -1, 200, 201, + 202, 203, 204, 205, 206, -1, 208, 209, 210, 211, + 212, 213, 214, 215, 216, 217, -1, 219, -1, 221, + 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, + -1, -1, 234, 235, 236, 237, -1, 239, 240, 241, + 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, + 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, + 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, + 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, + 282, 283, 284, 285, 286, -1, 288, 289, -1, -1, + 292, 293, 294, -1, -1, 297, 298, 299, 300, 301, + 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, + 312, 313, 314, -1, -1, -1, -1, 319, 320, 321, + 322, 323, 324, 325, 326, 327, 328, -1, 330, 331, + 332, 333, 334, 335, -1, 337, 338, 339, 340, 341, + 342, 343, 344, 345, 346, -1, 348, 349, 350, 351, + 352, 353, 354, 355, 356, 357, 358, 359, 360, -1, + 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, + 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, + -1, -1, 384, 385, 386, 387, 388, 389, 390, 391, + 392, -1, 394, 395, 396, 397, 398, -1, 400, 401, + 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, + 412, 413, 414, -1, -1, 417, 418, -1, 420, 421, + 422, 423, 424, 425, 426, -1, 428, 429, 430, -1, + -1, 433, 434, 435, 436, 437, 438, 439, 440, 441, + 442, 443, 444, 445, 446, -1, -1, 449, 450, 451, + -1, 453, 454, 455, 456, -1, 458, 459, 460, 461, + 462, 463, 464, 465, -1, 467, 468, 469, 470, 471, + 472, 473, 474, 475, -1, -1, 478, -1, -1, 481, + 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, + 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, + 502, -1, -1, -1, -1, -1, -1, 509, 510, 511, + -1, -1, -1, -1, 516, -1, 518, -1, -1, -1, + -1, -1, 524, 525, 526, 527, 3, 4, 5, 6, + 7, 8, 9, 10, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 22, 23, 24, 25, 26, + 27, 28, 29, -1, 31, 32, 33, -1, -1, -1, + -1, -1, 39, -1, -1, 42, 43, 44, -1, 46, + 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, + 57, -1, 59, 60, 61, 62, 63, 64, 65, 66, + 67, 68, 69, 70, 71, 72, 73, -1, 75, 76, + 77, 78, 79, -1, 81, -1, 83, 84, 85, 86, + 87, 88, 89, 90, 91, 92, -1, 94, 95, 96, + 97, 98, 99, -1, 101, 102, 103, 104, 105, 106, + 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, + 117, 118, -1, 120, 121, 122, 123, 124, 125, -1, + -1, 128, 129, 130, 131, -1, -1, 134, 135, 136, + 137, 138, -1, 140, 141, 142, -1, 144, 145, 146, + -1, 148, 149, 150, 151, 152, 153, 154, 155, 156, + 157, 158, 159, 160, 161, -1, 163, 164, 165, 166, + -1, 168, -1, 170, 171, -1, 173, 174, 175, 176, + 177, 178, -1, 180, -1, 182, 183, 184, 185, -1, + 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, + 197, 198, -1, 200, 201, 202, 203, 204, 205, 206, + -1, 208, 209, 210, 211, 212, 213, 214, 215, 216, + 217, -1, 219, -1, 221, 222, 223, 224, 225, 226, + 227, 228, 229, 230, 231, -1, -1, 234, 235, 236, + 237, -1, 239, 240, 241, 242, 243, 244, 245, 246, + 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, + 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, + 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, + 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, + -1, 288, 289, -1, -1, 292, 293, 294, -1, -1, + 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, + 307, 308, 309, 310, 311, 312, 313, 314, -1, -1, + -1, -1, 319, 320, 321, 322, 323, 324, 325, 326, + 327, 328, -1, 330, 331, 332, 333, 334, 335, -1, + 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, + -1, 348, 349, 350, 351, 352, 353, 354, 355, 356, + 357, 358, 359, 360, -1, 362, 363, 364, 365, 366, + 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, + 377, 378, 379, 380, 381, -1, -1, 384, 385, 386, + 387, 388, 389, 390, 391, 392, -1, 394, 395, 396, + 397, 398, -1, 400, 401, 402, 403, 404, 405, 406, + 407, 408, 409, 410, 411, 412, 413, 414, -1, -1, + 417, 418, -1, 420, 421, 422, 423, 424, 425, 426, + -1, 428, 429, 430, -1, -1, 433, 434, 435, 436, + 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, + -1, -1, 449, 450, 451, -1, 453, 454, 455, 456, + -1, 458, 459, 460, 461, 462, 463, 464, 465, -1, + 467, 468, 469, 470, 471, 472, 473, 474, 475, -1, + -1, 478, -1, -1, 481, 482, 483, 484, 485, 486, + 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, + 497, 498, 499, 500, 501, 502, -1, -1, -1, -1, + -1, -1, 509, 510, 511, -1, -1, -1, -1, 516, + -1, 518, -1, -1, -1, -1, -1, 524, 525, 526, + 527, 3, 4, 5, 6, 7, 8, 9, 10, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 519, -1, 22, 23, 24, 25, 26, + 22, 23, 24, 25, 26, 27, 28, 29, -1, 31, + 32, 33, -1, -1, -1, -1, -1, 39, -1, -1, + 42, 43, 44, -1, 46, 47, 48, 49, 50, 51, + 52, 53, 54, 55, 56, 57, -1, 59, 60, 61, + 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, + 72, 73, -1, 75, 76, 77, 78, 79, -1, 81, + -1, 83, 84, 85, 86, 87, 88, 89, 90, 91, + 92, -1, 94, 95, 96, 97, 98, 99, -1, 101, + 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, + 112, 113, 114, 115, 116, 117, 118, -1, 120, 121, + 122, 123, 124, 125, -1, -1, 128, 129, 130, 131, + -1, -1, 134, 135, 136, 137, 138, -1, 140, 141, + 142, -1, 144, 145, 146, -1, 148, 149, 150, 151, + 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, + -1, 163, 164, 165, 166, -1, 168, -1, 170, 171, + -1, 173, 174, 175, 176, 177, 178, -1, 180, -1, + 182, 183, 184, 185, -1, 187, 188, 189, 190, 191, + 192, 193, 194, 195, 196, 197, 198, -1, 200, 201, + 202, 203, 204, 205, 206, -1, 208, 209, 210, 211, + 212, 213, 214, 215, 216, 217, -1, 219, -1, 221, + 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, + -1, -1, 234, 235, 236, 237, -1, 239, 240, 241, + 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, + 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, + 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, + 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, + 282, 283, 284, 285, 286, -1, 288, 289, -1, -1, + 292, 293, 294, -1, -1, 297, 298, 299, 300, 301, + 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, + 312, 313, 314, -1, -1, -1, -1, 319, 320, 321, + 322, 323, 324, 325, 326, 327, 328, -1, 330, 331, + 332, 333, 334, 335, -1, 337, 338, 339, 340, 341, + 342, 343, 344, 345, 346, -1, 348, 349, 350, 351, + 352, 353, 354, 355, 356, 357, 358, 359, 360, -1, + 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, + 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, + -1, -1, 384, 385, 386, 387, 388, 389, 390, 391, + 392, -1, 394, 395, 396, 397, 398, -1, 400, 401, + 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, + 412, 413, 414, -1, -1, 417, 418, -1, 420, 421, + 422, 423, 424, 425, 426, -1, 428, 429, 430, -1, + -1, 433, 434, 435, 436, 437, 438, 439, 440, 441, + 442, 443, 444, 445, 446, -1, -1, 449, 450, 451, + -1, 453, 454, 455, 456, -1, 458, 459, 460, 461, + 462, 463, 464, 465, -1, 467, 468, 469, 470, 471, + 472, 473, 474, 475, -1, -1, 478, -1, -1, 481, + 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, + 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, + 502, -1, -1, -1, -1, -1, -1, 509, 510, 511, + -1, -1, -1, -1, 516, -1, 518, -1, -1, -1, + -1, -1, 524, 525, 526, 527, 3, 4, 5, 6, + 7, 8, 9, 10, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 22, 23, 24, 25, 26, 27, 28, 29, -1, 31, 32, 33, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 43, 44, -1, 46, - 47, 48, -1, 50, 51, 52, 53, 54, -1, 56, - 57, -1, 59, 60, 61, 62, 63, 64, -1, -1, + -1, -1, 39, -1, -1, 42, 43, 44, -1, 46, + 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, + 57, -1, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, -1, 75, 76, - 77, 78, 79, -1, -1, -1, 83, 84, 85, 86, - 87, 88, -1, 90, 91, 92, -1, 94, 95, 96, - 97, 98, 99, -1, -1, 102, 103, 104, 105, 106, + 77, 78, 79, -1, 81, -1, 83, 84, 85, 86, + 87, 88, 89, 90, 91, 92, -1, 94, 95, 96, + 97, 98, 99, -1, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, - -1, 118, -1, 120, 121, 122, 123, 124, 125, -1, + 117, 118, -1, 120, 121, 122, 123, 124, 125, -1, -1, 128, 129, 130, 131, -1, -1, 134, 135, 136, 137, 138, -1, 140, 141, 142, -1, 144, 145, 146, -1, 148, 149, 150, 151, 152, 153, 154, 155, 156, - 157, 158, 159, -1, 161, -1, 163, 164, 165, 166, - -1, 168, -1, 170, -1, -1, -1, 174, 175, 176, - -1, 178, -1, 180, -1, 182, 183, 184, 185, -1, - 187, 188, 189, 190, 191, 192, 193, -1, 195, 196, + 157, 158, 159, 160, 161, -1, 163, 164, 165, 166, + -1, 168, -1, 170, 171, -1, 173, 174, 175, 176, + 177, 178, -1, 180, -1, 182, 183, 184, 185, -1, + 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, -1, 200, 201, 202, 203, 204, 205, 206, - -1, 208, -1, 210, 211, 212, 213, 214, 215, 216, - 217, -1, 219, -1, 221, -1, -1, 224, -1, 226, - 227, 228, 229, 230, 231, -1, -1, 234, -1, 236, - -1, -1, 239, 240, 241, 242, 243, 244, 245, 246, + -1, 208, 209, 210, 211, 212, 213, 214, 215, 216, + 217, -1, 219, -1, 221, 222, 223, 224, 225, 226, + 227, 228, 229, 230, 231, -1, -1, 234, 235, 236, + 237, -1, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, - 267, 268, -1, 270, 271, 272, 273, 274, -1, 276, - 277, -1, 279, -1, 281, 282, 283, 284, 285, 286, + 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, + 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, -1, 288, 289, -1, -1, 292, 293, 294, -1, -1, - 297, 298, 299, -1, 301, -1, 303, 304, 305, 306, + 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, -1, -1, - -1, -1, 319, 320, 321, -1, 323, 324, 325, 326, + -1, -1, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, -1, 330, 331, 332, 333, 334, 335, -1, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, -1, 348, 349, 350, 351, 352, 353, 354, 355, 356, - 357, 358, 359, 360, -1, 362, 363, -1, 365, 366, + 357, 358, 359, 360, -1, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, -1, -1, 384, 385, 386, - 387, 388, 389, 390, 391, 392, -1, -1, 395, 396, + 387, 388, 389, 390, 391, 392, -1, 394, 395, 396, 397, 398, -1, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, -1, -1, - 417, 418, -1, 420, -1, 422, 423, 424, 425, 426, + 417, 418, -1, 420, 421, 422, 423, 424, 425, 426, -1, 428, 429, 430, -1, -1, 433, 434, 435, 436, - 437, -1, 439, 440, 441, 442, 443, 444, 445, 446, + 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, -1, -1, 449, 450, 451, -1, 453, 454, 455, 456, -1, 458, 459, 460, 461, 462, 463, 464, 465, -1, - 467, -1, 469, 470, 471, 472, 473, 474, 475, -1, + 467, 468, 469, 470, 471, 472, 473, 474, 475, -1, -1, 478, -1, -1, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, - 497, 498, 499, 500, 501, 3, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 518, 519, -1, 22, 23, 24, 25, 26, 27, - 28, 29, -1, 31, 32, 33, 34, 35, -1, 37, - -1, -1, -1, -1, 42, 43, 44, -1, 46, 47, - 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, - -1, 59, 60, 61, 62, 63, 64, -1, -1, 67, - 68, 69, 70, 71, 72, 73, -1, 75, 76, 77, - 78, 79, -1, 81, -1, 83, 84, 85, 86, 87, - 88, 89, 90, 91, 92, -1, 94, 95, 96, 97, - 98, 99, -1, 101, 102, 103, 104, 105, 106, 107, - 108, 109, 110, 111, 112, 113, 114, 115, 116, -1, - 118, -1, 120, 121, 122, 123, 124, 125, 126, 127, - 128, 129, 130, 131, -1, -1, 134, 135, 136, 137, - 138, -1, 140, 141, 142, -1, 144, 145, 146, -1, - 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, - 158, 159, -1, 161, -1, 163, 164, 165, 166, -1, - 168, -1, 170, 171, 172, 173, 174, 175, 176, 177, - 178, -1, 180, -1, 182, 183, 184, 185, -1, 187, - 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, - 198, -1, 200, 201, 202, 203, 204, 205, 206, -1, - 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, - -1, 219, -1, 221, 222, 223, 224, 225, 226, 227, - 228, 229, 230, 231, -1, -1, 234, 235, 236, 237, - -1, 239, 240, 241, 242, 243, 244, 245, 246, 247, - 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, - 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, - 268, 269, 270, 271, 272, 273, 274, -1, 276, 277, - 278, 279, -1, 281, 282, 283, 284, 285, 286, -1, - 288, 289, -1, -1, 292, 293, 294, -1, -1, 297, - 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, - 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, - -1, 319, 320, 321, 322, 323, 324, 325, 326, 327, - 328, -1, 330, 331, 332, 333, 334, 335, -1, 337, - 338, 339, 340, 341, 342, 343, 344, 345, 346, -1, - 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, - 358, 359, 360, -1, 362, 363, 364, 365, 366, 367, - 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, - 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, - 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, - 398, -1, 400, 401, 402, 403, 404, 405, 406, 407, - 408, 409, 410, 411, 412, 413, 414, 415, -1, 417, - 418, 419, 420, 421, 422, 423, 424, 425, 426, -1, - 428, 429, 430, -1, -1, 433, 434, 435, 436, 437, - -1, 439, 440, 441, 442, 443, 444, 445, 446, -1, - -1, 449, 450, 451, 452, 453, 454, 455, 456, -1, - 458, 459, 460, 461, 462, 463, 464, 465, -1, 467, - 468, 469, 470, 471, 472, 473, 474, 475, -1, -1, - 478, -1, 480, 481, 482, 483, 484, 485, 486, 487, - 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, - 498, 499, 500, 501, -1, 3, 504, 5, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 518, -1, -1, -1, 22, 23, 24, 25, 26, 27, - 28, 29, -1, 31, 32, 33, -1, -1, -1, -1, - -1, -1, -1, -1, 42, 43, 44, -1, 46, 47, - 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, - -1, 59, 60, 61, 62, 63, 64, -1, 66, 67, - 68, 69, 70, 71, 72, 73, -1, 75, 76, 77, - 78, 79, -1, 81, -1, 83, 84, 85, 86, 87, - 88, 89, 90, 91, 92, -1, 94, 95, 96, 97, - 98, 99, -1, 101, 102, 103, 104, 105, 106, 107, - 108, 109, 110, 111, 112, 113, 114, 115, 116, -1, - 118, -1, 120, 121, 122, 123, 124, 125, 126, 127, - 128, 129, 130, 131, -1, -1, 134, 135, 136, 137, - 138, -1, 140, 141, 142, -1, 144, 145, 146, -1, - 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, - 158, 159, -1, 161, -1, 163, 164, 165, 166, -1, - 168, -1, 170, 171, 172, 173, 174, 175, 176, 177, - 178, -1, 180, -1, 182, 183, 184, 185, -1, 187, - 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, - 198, -1, 200, 201, 202, 203, 204, 205, 206, -1, - 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, - -1, 219, -1, 221, 222, 223, 224, 225, 226, 227, - 228, 229, 230, 231, 232, -1, 234, 235, 236, 237, - -1, 239, 240, 241, 242, 243, 244, 245, 246, 247, - 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, - 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, - 268, 269, 270, 271, 272, 273, 274, -1, 276, 277, - 278, 279, -1, 281, 282, 283, 284, 285, 286, -1, - 288, 289, -1, 291, 292, 293, 294, -1, -1, 297, - 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, - 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, - -1, 319, 320, 321, 322, 323, 324, 325, 326, 327, - 328, -1, 330, 331, 332, 333, 334, 335, -1, 337, - 338, 339, 340, 341, 342, 343, 344, 345, 346, -1, - 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, - 358, 359, 360, -1, 362, 363, 364, 365, 366, 367, - 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, - 378, 379, 380, 381, 382, -1, 384, 385, 386, 387, - 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, - 398, -1, 400, 401, 402, 403, 404, 405, 406, 407, - 408, 409, 410, 411, 412, 413, 414, 415, -1, 417, - 418, 419, 420, 421, 422, 423, 424, 425, 426, -1, - 428, 429, 430, -1, -1, 433, 434, 435, 436, 437, - -1, 439, 440, 441, 442, 443, 444, 445, 446, -1, - -1, 449, 450, 451, 452, 453, 454, 455, 456, -1, - 458, 459, 460, 461, 462, 463, 464, 465, -1, 467, - 468, 469, 470, 471, 472, 473, 474, 475, -1, -1, - 478, -1, 480, 481, 482, 483, 484, 485, 486, 487, - 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, - 498, 499, 500, 501, -1, 3, 504, 5, -1, -1, + 497, 498, 499, 500, 501, 502, -1, -1, -1, -1, + -1, -1, 509, 510, 511, -1, -1, -1, -1, 516, + -1, 518, -1, -1, -1, -1, -1, 524, 525, 526, + 527, 3, 4, 5, 6, 7, 8, 9, 10, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 518, -1, -1, -1, 22, 23, 24, 25, 26, 27, - 28, 29, -1, 31, 32, 33, -1, -1, -1, -1, - -1, -1, -1, -1, 42, 43, 44, -1, 46, 47, - 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, - -1, 59, 60, 61, 62, 63, 64, -1, 66, 67, - 68, 69, 70, 71, 72, 73, -1, 75, 76, 77, - 78, 79, -1, 81, -1, 83, 84, 85, 86, 87, - 88, 89, 90, 91, 92, -1, 94, 95, 96, 97, - 98, 99, -1, 101, 102, 103, 104, 105, 106, 107, - 108, 109, 110, 111, 112, 113, 114, 115, 116, -1, - 118, -1, 120, 121, 122, 123, 124, 125, -1, -1, - 128, 129, 130, 131, -1, -1, 134, 135, 136, 137, - 138, -1, 140, 141, 142, -1, 144, 145, 146, -1, - 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, - 158, 159, -1, 161, -1, 163, 164, 165, 166, -1, - 168, -1, 170, 171, -1, 173, 174, 175, 176, 177, - 178, -1, 180, -1, 182, 183, 184, 185, -1, 187, - 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, - 198, -1, 200, 201, 202, 203, 204, 205, 206, -1, - 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, - -1, 219, -1, 221, 222, 223, 224, 225, 226, 227, - 228, 229, 230, 231, 232, -1, 234, 235, 236, 237, - -1, 239, 240, 241, 242, 243, 244, 245, 246, 247, - 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, - 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, - 268, 269, 270, 271, 272, 273, 274, -1, 276, 277, - 278, 279, -1, 281, 282, 283, 284, 285, 286, -1, - 288, 289, -1, 291, 292, 293, 294, -1, -1, 297, - 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, - 308, 309, 310, 311, 312, 313, 314, -1, -1, -1, - -1, 319, 320, 321, 322, 323, 324, 325, 326, 327, - 328, -1, 330, 331, 332, 333, 334, 335, -1, 337, - 338, 339, 340, 341, 342, 343, 344, 345, 346, -1, - 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, - 358, 359, 360, -1, 362, 363, 364, 365, 366, 367, - 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, - 378, 379, 380, 381, -1, -1, 384, 385, 386, 387, - 388, 389, 390, 391, 392, -1, 394, 395, 396, 397, - 398, -1, 400, 401, 402, 403, 404, 405, 406, 407, - 408, 409, 410, 411, 412, 413, 414, -1, -1, 417, - 418, -1, 420, 421, 422, 423, 424, 425, 426, -1, - 428, 429, 430, -1, -1, 433, 434, 435, 436, 437, - -1, 439, 440, 441, 442, 443, 444, 445, 446, -1, - -1, 449, 450, 451, -1, 453, 454, 455, 456, -1, - 458, 459, 460, 461, 462, 463, 464, 465, -1, 467, - 468, 469, 470, 471, 472, 473, 474, 475, -1, -1, - 478, -1, -1, 481, 482, 483, 484, 485, 486, 487, - 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, - 498, 499, 500, 501, 3, -1, 5, -1, -1, -1, + 22, 23, 24, 25, 26, 27, 28, 29, -1, 31, + 32, 33, -1, -1, -1, -1, -1, 39, -1, -1, + 42, 43, 44, -1, 46, 47, 48, 49, 50, 51, + 52, 53, 54, 55, 56, 57, -1, 59, 60, 61, + 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, + 72, 73, -1, 75, 76, 77, 78, 79, -1, 81, + -1, 83, 84, 85, 86, 87, 88, 89, 90, 91, + 92, -1, 94, 95, 96, 97, 98, 99, -1, 101, + 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, + 112, 113, 114, 115, 116, 117, 118, -1, 120, 121, + 122, 123, 124, 125, -1, -1, 128, 129, 130, 131, + -1, -1, 134, 135, 136, 137, 138, -1, 140, 141, + 142, -1, 144, 145, 146, -1, 148, 149, 150, 151, + 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, + -1, 163, 164, 165, 166, -1, 168, -1, 170, 171, + -1, 173, 174, 175, 176, 177, 178, -1, 180, -1, + 182, 183, 184, 185, -1, 187, 188, 189, 190, 191, + 192, 193, 194, 195, 196, 197, 198, -1, 200, 201, + 202, 203, 204, 205, 206, -1, 208, 209, 210, 211, + 212, 213, 214, 215, 216, 217, -1, 219, -1, 221, + 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, + -1, -1, 234, 235, 236, 237, -1, 239, 240, 241, + 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, + 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, + 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, + 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, + 282, 283, 284, 285, 286, -1, 288, 289, -1, -1, + 292, 293, 294, -1, -1, 297, 298, 299, 300, 301, + 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, + 312, 313, 314, -1, -1, -1, -1, 319, 320, 321, + 322, 323, 324, 325, 326, 327, 328, -1, 330, 331, + 332, 333, 334, 335, -1, 337, 338, 339, 340, 341, + 342, 343, 344, 345, 346, -1, 348, 349, 350, 351, + 352, 353, 354, 355, 356, 357, 358, 359, 360, -1, + 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, + 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, + -1, -1, 384, 385, 386, 387, 388, 389, 390, 391, + 392, -1, 394, 395, 396, 397, 398, -1, 400, 401, + 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, + 412, 413, 414, -1, -1, 417, 418, -1, 420, 421, + 422, 423, 424, 425, 426, -1, 428, 429, 430, -1, + -1, 433, 434, 435, 436, 437, 438, 439, 440, 441, + 442, 443, 444, 445, 446, -1, -1, 449, 450, 451, + -1, 453, 454, 455, 456, -1, 458, 459, 460, 461, + 462, 463, 464, 465, -1, 467, 468, 469, 470, 471, + 472, 473, 474, 475, -1, -1, 478, -1, -1, 481, + 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, + 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, + 502, -1, -1, -1, -1, -1, -1, 509, 510, 511, + -1, -1, -1, -1, 516, -1, 518, -1, -1, -1, + -1, -1, 524, 525, 526, 527, 3, 4, 5, 6, + 7, 8, 9, 10, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 22, 23, 24, 25, 26, + 27, 28, 29, -1, 31, 32, 33, -1, -1, -1, + -1, -1, 39, -1, -1, 42, 43, 44, -1, 46, + 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, + 57, -1, 59, 60, 61, 62, 63, 64, 65, 66, + 67, 68, 69, 70, 71, 72, 73, -1, 75, 76, + 77, 78, 79, -1, 81, -1, 83, 84, 85, 86, + 87, 88, 89, 90, 91, 92, -1, 94, 95, 96, + 97, 98, 99, -1, 101, 102, 103, 104, 105, 106, + 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, + 117, 118, -1, 120, 121, 122, 123, 124, 125, -1, + -1, 128, 129, 130, 131, -1, -1, 134, 135, 136, + 137, 138, -1, 140, 141, 142, -1, 144, 145, 146, + -1, 148, 149, 150, 151, 152, 153, 154, 155, 156, + 157, 158, 159, 160, 161, -1, 163, 164, 165, 166, + -1, 168, -1, 170, 171, -1, 173, 174, 175, 176, + 177, 178, -1, 180, -1, 182, 183, 184, 185, -1, + 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, + 197, 198, -1, 200, 201, 202, 203, 204, 205, 206, + -1, 208, 209, 210, 211, 212, 213, 214, 215, 216, + 217, -1, 219, -1, 221, 222, 223, 224, 225, 226, + 227, 228, 229, 230, 231, -1, -1, 234, 235, 236, + 237, -1, 239, 240, 241, 242, 243, 244, 245, 246, + 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, + 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, + 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, + 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, + -1, 288, 289, -1, -1, 292, 293, 294, -1, -1, + 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, + 307, 308, 309, 310, 311, 312, 313, 314, -1, -1, + -1, -1, 319, 320, 321, 322, 323, 324, 325, 326, + 327, 328, -1, 330, 331, 332, 333, 334, 335, -1, + 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, + -1, 348, 349, 350, 351, 352, 353, 354, 355, 356, + 357, 358, 359, 360, -1, 362, 363, 364, 365, 366, + 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, + 377, 378, 379, 380, 381, -1, -1, 384, 385, 386, + 387, 388, 389, 390, 391, 392, -1, 394, 395, 396, + 397, 398, -1, 400, 401, 402, 403, 404, 405, 406, + 407, 408, 409, 410, 411, 412, 413, 414, -1, -1, + 417, 418, -1, 420, 421, 422, 423, 424, 425, 426, + -1, 428, 429, 430, -1, -1, 433, 434, 435, 436, + 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, + -1, -1, 449, 450, 451, -1, 453, 454, 455, 456, + -1, 458, 459, 460, 461, 462, 463, 464, 465, -1, + 467, 468, 469, 470, 471, 472, 473, 474, 475, -1, + -1, 478, -1, -1, 481, 482, 483, 484, 485, 486, + 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, + 497, 498, 499, 500, 501, 502, -1, -1, -1, -1, + -1, -1, 509, 510, 511, -1, -1, -1, -1, 516, + -1, 518, -1, -1, -1, -1, -1, 524, 525, 526, + 527, 3, 4, 5, 6, 7, 8, 9, 10, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 518, -1, -1, 22, 23, 24, 25, 26, 27, 28, - 29, -1, 31, 32, 33, -1, -1, -1, -1, -1, - -1, -1, -1, 42, 43, 44, -1, 46, 47, 48, - 49, 50, 51, 52, 53, 54, 55, 56, 57, -1, - 59, 60, 61, 62, 63, 64, -1, 66, 67, 68, - 69, 70, 71, 72, 73, -1, 75, 76, 77, 78, - 79, -1, 81, -1, 83, 84, 85, 86, 87, 88, - 89, 90, 91, 92, -1, 94, 95, 96, 97, 98, - 99, -1, 101, 102, 103, 104, 105, 106, 107, 108, - 109, 110, 111, 112, 113, 114, 115, 116, -1, 118, - -1, 120, 121, 122, 123, 124, 125, -1, -1, 128, - 129, 130, 131, -1, -1, 134, 135, 136, 137, 138, - -1, 140, 141, 142, -1, 144, 145, 146, -1, 148, - 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, - 159, -1, 161, -1, 163, 164, 165, 166, -1, 168, - -1, 170, 171, -1, 173, 174, 175, 176, 177, 178, - -1, 180, -1, 182, 183, 184, 185, -1, 187, 188, - 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, - -1, 200, 201, 202, 203, 204, 205, 206, -1, 208, - 209, 210, 211, 212, 213, 214, 215, 216, 217, -1, - 219, -1, 221, 222, 223, 224, 225, 226, 227, 228, - 229, 230, 231, -1, -1, 234, 235, 236, 237, -1, - 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, - 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, - 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, - 269, 270, 271, 272, 273, 274, -1, 276, 277, 278, - 279, -1, 281, 282, 283, 284, 285, 286, -1, 288, - 289, -1, 291, 292, 293, 294, -1, -1, 297, 298, - 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, - 309, 310, 311, 312, 313, 314, -1, -1, -1, -1, - 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, - -1, 330, 331, 332, 333, 334, 335, -1, 337, 338, - 339, 340, 341, 342, 343, 344, 345, 346, -1, 348, - 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, - 359, 360, -1, 362, 363, 364, 365, 366, 367, 368, - 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, - 379, 380, 381, -1, -1, 384, 385, 386, 387, 388, - 389, 390, 391, 392, -1, 394, 395, 396, 397, 398, - -1, 400, 401, 402, 403, 404, 405, 406, 407, 408, - 409, 410, 411, 412, 413, 414, -1, -1, 417, 418, - -1, 420, 421, 422, 423, 424, 425, 426, -1, 428, - 429, 430, -1, -1, 433, 434, 435, 436, 437, -1, - 439, 440, 441, 442, 443, 444, 445, 446, -1, -1, - 449, 450, 451, -1, 453, 454, 455, 456, -1, 458, - 459, 460, 461, 462, 463, 464, 465, -1, 467, 468, - 469, 470, 471, 472, 473, 474, 475, -1, -1, 478, - -1, -1, 481, 482, 483, 484, 485, 486, 487, 488, - 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, - 499, 500, 501, 3, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, 518, - -1, -1, 22, 23, 24, 25, 26, 27, 28, 29, - -1, 31, 32, 33, -1, -1, -1, -1, -1, -1, - -1, -1, 42, 43, 44, -1, 46, 47, 48, 49, - 50, 51, 52, 53, 54, 55, 56, 57, -1, 59, - 60, 61, 62, 63, 64, -1, 66, 67, 68, 69, - 70, 71, 72, 73, -1, 75, 76, 77, 78, 79, - -1, 81, -1, 83, 84, 85, 86, 87, 88, 89, - 90, 91, 92, -1, 94, 95, 96, 97, 98, 99, - -1, 101, 102, 103, 104, 105, 106, 107, 108, 109, - 110, 111, 112, 113, 114, 115, 116, -1, 118, -1, - 120, 121, 122, 123, 124, 125, -1, -1, 128, 129, - 130, 131, -1, -1, 134, 135, 136, 137, 138, -1, - 140, 141, 142, -1, 144, 145, 146, -1, 148, 149, - 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, - -1, 161, -1, 163, 164, 165, 166, -1, 168, -1, - 170, 171, -1, 173, 174, 175, 176, 177, 178, -1, - 180, -1, 182, 183, 184, 185, -1, 187, 188, 189, - 190, 191, 192, 193, 194, 195, 196, 197, 198, -1, - 200, 201, 202, 203, 204, 205, 206, -1, 208, 209, - 210, 211, 212, 213, 214, 215, 216, 217, -1, 219, - -1, 221, 222, 223, 224, 225, 226, 227, 228, 229, - 230, 231, -1, -1, 234, 235, 236, 237, -1, 239, - 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, - 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, - 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, - 270, 271, 272, 273, 274, -1, 276, 277, 278, 279, - -1, 281, 282, 283, 284, 285, 286, -1, 288, 289, - -1, -1, 292, 293, 294, -1, -1, 297, 298, 299, - 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, - 310, 311, 312, 313, 314, -1, -1, -1, -1, 319, - 320, 321, 322, 323, 324, 325, 326, 327, 328, -1, - 330, 331, 332, 333, 334, 335, -1, 337, 338, 339, - 340, 341, 342, 343, 344, 345, 346, -1, 348, 349, - 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, - 360, -1, 362, 363, 364, 365, 366, 367, 368, 369, - 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, - 380, 381, -1, -1, 384, 385, 386, 387, 388, 389, - 390, 391, 392, -1, 394, 395, 396, 397, 398, -1, - 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, - 410, 411, 412, 413, 414, -1, -1, 417, 418, -1, - 420, 421, 422, 423, 424, 425, 426, -1, 428, 429, - 430, -1, -1, 433, 434, 435, 436, 437, -1, 439, - 440, 441, 442, 443, 444, 445, 446, -1, -1, 449, - 450, 451, -1, 453, 454, 455, 456, -1, 458, 459, - 460, 461, 462, 463, 464, 465, -1, 467, 468, 469, - 470, 471, 472, 473, 474, 475, -1, -1, 478, -1, - -1, 481, 482, 483, 484, 485, 486, 487, 488, 489, - 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, - 500, 501, 3, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 518, -1, - -1, 22, 23, 24, 25, 26, 27, 28, 29, -1, - 31, 32, 33, -1, -1, -1, -1, -1, -1, -1, - -1, 42, 43, 44, -1, 46, 47, 48, 49, 50, - 51, 52, 53, 54, 55, 56, 57, -1, 59, 60, - 61, 62, 63, 64, -1, 66, 67, 68, 69, 70, - 71, 72, 73, -1, 75, 76, 77, 78, 79, -1, - 81, -1, 83, 84, 85, 86, 87, 88, 89, 90, - 91, 92, -1, 94, 95, 96, 97, 98, 99, -1, - 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, - 111, 112, 113, 114, 115, 116, -1, 118, -1, 120, - 121, 122, 123, 124, 125, -1, -1, 128, 129, 130, - 131, -1, -1, 134, 135, 136, 137, 138, -1, 140, - 141, 142, -1, 144, 145, 146, -1, 148, 149, 150, - 151, 152, 153, 154, 155, 156, 157, 158, 159, -1, - 161, -1, 163, 164, 165, 166, -1, 168, -1, 170, - 171, -1, 173, 174, 175, 176, 177, 178, -1, 180, - -1, 182, 183, 184, 185, -1, 187, 188, 189, 190, - 191, 192, 193, 194, 195, 196, 197, 198, -1, 200, - 201, 202, 203, 204, 205, 206, -1, 208, 209, 210, - 211, 212, 213, 214, 215, 216, 217, -1, 219, -1, - 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, - 231, -1, -1, 234, 235, 236, 237, -1, 239, 240, - 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, - 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, - 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, - 271, 272, 273, 274, -1, 276, 277, 278, 279, -1, - 281, 282, 283, 284, 285, 286, -1, 288, 289, -1, - -1, 292, 293, 294, -1, -1, 297, 298, 299, 300, - 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, - 311, 312, 313, 314, -1, -1, -1, -1, 319, 320, - 321, 322, 323, 324, 325, 326, 327, 328, -1, 330, - 331, 332, 333, 334, 335, -1, 337, 338, 339, 340, - 341, 342, 343, 344, 345, 346, -1, 348, 349, 350, - 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, - -1, 362, 363, 364, 365, 366, 367, 368, 369, 370, - 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, - 381, -1, -1, 384, 385, 386, 387, 388, 389, 390, - 391, 392, -1, 394, 395, 396, 397, 398, -1, 400, - 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, - 411, 412, 413, 414, -1, -1, 417, 418, -1, 420, - 421, 422, 423, 424, 425, 426, -1, 428, 429, 430, - -1, -1, 433, 434, 435, 436, 437, -1, 439, 440, - 441, 442, 443, 444, 445, 446, -1, -1, 449, 450, - 451, -1, 453, 454, 455, 456, -1, 458, 459, 460, - 461, 462, 463, 464, 465, -1, 467, 468, 469, 470, - 471, 472, 473, 474, 475, -1, -1, 478, -1, -1, - 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, - 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, - 501, 3, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 518, -1, -1, 22, 23, 24, 25, 26, 27, 28, 29, -1, 31, - 32, 33, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 43, 44, -1, 46, 47, 48, -1, 50, 51, - 52, 53, 54, -1, 56, 57, -1, 59, 60, 61, - 62, 63, 64, -1, -1, 67, 68, 69, 70, 71, - 72, 73, -1, 75, 76, 77, 78, 79, -1, -1, - -1, 83, 84, 85, 86, 87, 88, -1, 90, 91, - 92, -1, 94, 95, 96, 97, 98, 99, -1, -1, + 32, 33, -1, -1, -1, -1, -1, 39, -1, -1, + 42, 43, 44, -1, 46, 47, 48, 49, 50, 51, + 52, 53, 54, 55, 56, 57, -1, 59, 60, 61, + 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, + 72, 73, -1, 75, 76, 77, 78, 79, -1, 81, + -1, 83, 84, 85, 86, 87, 88, 89, 90, 91, + 92, -1, 94, 95, 96, 97, 98, 99, -1, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, -1, 118, -1, 120, 121, - 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, + 122, 123, 124, 125, -1, -1, 128, 129, 130, 131, -1, -1, 134, 135, 136, 137, 138, -1, 140, 141, 142, -1, 144, 145, 146, -1, 148, 149, 150, 151, - 152, 153, 154, 155, 156, 157, 158, 159, -1, 161, - -1, 163, 164, 165, 166, -1, 168, -1, 170, -1, - 172, -1, 174, 175, 176, -1, 178, -1, 180, -1, + 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, + -1, 163, 164, 165, 166, -1, 168, -1, 170, 171, + -1, 173, 174, 175, 176, 177, 178, -1, 180, -1, 182, 183, 184, 185, -1, 187, 188, 189, 190, 191, - 192, 193, -1, 195, 196, 197, 198, -1, 200, 201, - 202, 203, 204, 205, 206, -1, 208, -1, 210, 211, + 192, 193, 194, 195, 196, 197, 198, -1, 200, 201, + 202, 203, 204, 205, 206, -1, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, -1, 219, -1, 221, - -1, -1, 224, -1, 226, 227, 228, 229, 230, 231, - -1, -1, 234, -1, 236, -1, -1, 239, 240, 241, + 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, + -1, -1, 234, 235, 236, 237, -1, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, - 262, 263, 264, 265, 266, 267, 268, -1, 270, 271, - 272, 273, 274, -1, 276, 277, -1, 279, -1, 281, + 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, + 272, 273, 274, -1, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, -1, 288, 289, -1, -1, - 292, 293, 294, -1, -1, 297, 298, 299, -1, 301, - -1, 303, 304, 305, 306, 307, 308, 309, 310, 311, - 312, 313, 314, 315, 316, 317, -1, 319, 320, 321, - -1, 323, 324, 325, 326, 327, 328, -1, 330, 331, + 292, 293, 294, -1, -1, 297, 298, 299, 300, 301, + 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, + 312, 313, 314, -1, -1, -1, -1, 319, 320, 321, + 322, 323, 324, 325, 326, 327, 328, -1, 330, 331, 332, 333, 334, 335, -1, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, -1, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, -1, - 362, 363, -1, 365, 366, 367, 368, 369, 370, 371, + 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, - 382, -1, 384, 385, 386, 387, 388, 389, 390, 391, - 392, 393, -1, 395, 396, 397, 398, -1, 400, 401, + -1, -1, 384, 385, 386, 387, 388, 389, 390, 391, + 392, -1, 394, 395, 396, 397, 398, -1, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, - 412, 413, 414, 415, -1, 417, 418, 419, 420, -1, + 412, 413, 414, -1, -1, 417, 418, -1, 420, 421, 422, 423, 424, 425, 426, -1, 428, 429, 430, -1, - -1, 433, 434, 435, 436, 437, -1, 439, 440, 441, + -1, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, -1, -1, 449, 450, 451, - 452, 453, 454, 455, 456, -1, 458, 459, 460, 461, - 462, 463, 464, 465, -1, 467, -1, 469, 470, 471, - 472, 473, 474, 475, -1, -1, 478, -1, 480, 481, + -1, 453, 454, 455, 456, -1, 458, 459, 460, 461, + 462, 463, 464, 465, -1, 467, 468, 469, 470, 471, + 472, 473, 474, 475, -1, -1, 478, -1, -1, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, - -1, 3, 504, 5, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 518, -1, -1, -1, - 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, - 32, 33, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 43, 44, -1, 46, 47, 48, -1, 50, 51, - 52, 53, 54, -1, 56, 57, -1, 59, 60, 61, - 62, 63, 64, -1, -1, 67, 68, 69, 70, 71, - 72, 73, -1, 75, 76, 77, 78, 79, -1, -1, - -1, 83, 84, 85, 86, 87, 88, -1, 90, 91, - 92, -1, 94, 95, 96, 97, 98, 99, -1, -1, + -1, -1, -1, -1, -1, -1, -1, 509, 510, -1, + -1, -1, -1, -1, 516, -1, 518, -1, -1, -1, + -1, -1, 524, 525, 526, 527, 3, 4, 5, 6, + 7, 8, 9, 10, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 22, 23, 24, 25, 26, + 27, 28, 29, -1, 31, 32, 33, -1, -1, -1, + -1, -1, 39, -1, -1, 42, 43, 44, -1, 46, + 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, + 57, -1, 59, 60, 61, 62, 63, 64, 65, 66, + 67, 68, 69, 70, 71, 72, 73, -1, 75, 76, + 77, 78, 79, -1, 81, -1, 83, 84, 85, 86, + 87, 88, 89, 90, 91, 92, -1, 94, 95, 96, + 97, 98, 99, -1, 101, 102, 103, 104, 105, 106, + 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, + 117, 118, -1, 120, 121, 122, 123, 124, 125, -1, + -1, 128, 129, 130, 131, -1, -1, 134, 135, 136, + 137, 138, -1, 140, 141, 142, -1, 144, 145, 146, + -1, 148, 149, 150, 151, 152, 153, 154, 155, 156, + 157, 158, 159, 160, 161, -1, 163, 164, 165, 166, + -1, 168, -1, 170, 171, -1, 173, 174, 175, 176, + 177, 178, -1, 180, -1, 182, 183, 184, 185, -1, + 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, + 197, 198, -1, 200, 201, 202, 203, 204, 205, 206, + -1, 208, 209, 210, 211, 212, 213, 214, 215, 216, + 217, -1, 219, -1, 221, -1, -1, 224, 225, 226, + 227, 228, 229, 230, 231, -1, -1, 234, 235, 236, + 237, -1, 239, 240, 241, 242, 243, 244, 245, 246, + 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, + 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, + 267, 268, 269, 270, 271, 272, 273, 274, -1, 276, + 277, -1, 279, 280, 281, 282, 283, 284, 285, 286, + -1, 288, 289, -1, -1, 292, 293, 294, -1, -1, + 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, + 307, 308, 309, 310, 311, 312, 313, 314, -1, -1, + -1, -1, 319, 320, 321, 322, 323, 324, 325, 326, + 327, 328, -1, 330, 331, 332, 333, 334, 335, -1, + 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, + -1, 348, 349, 350, 351, 352, 353, 354, 355, 356, + 357, 358, 359, 360, -1, 362, 363, 364, 365, 366, + 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, + 377, 378, 379, 380, 381, -1, -1, 384, 385, 386, + 387, 388, 389, 390, 391, 392, -1, 394, 395, 396, + 397, 398, -1, 400, 401, 402, 403, 404, 405, 406, + 407, 408, 409, 410, 411, 412, 413, 414, -1, -1, + 417, 418, -1, 420, 421, 422, 423, 424, 425, 426, + -1, 428, 429, 430, -1, -1, 433, 434, 435, 436, + 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, + -1, -1, 449, 450, 451, -1, 453, 454, 455, 456, + -1, 458, 459, 460, 461, 462, 463, 464, 465, -1, + 467, 468, 469, 470, 471, 472, 473, 474, 475, -1, + -1, 478, -1, -1, 481, 482, 483, 484, 485, 486, + 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, + 497, 498, 499, 500, 501, 502, -1, -1, -1, -1, + -1, -1, 509, 510, 511, -1, -1, -1, -1, 516, + -1, 518, -1, -1, -1, -1, -1, 524, 525, 526, + 527, 3, 4, 5, 6, 7, -1, 9, 10, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 22, 23, 24, 25, 26, 27, 28, 29, -1, 31, + 32, 33, -1, -1, -1, -1, -1, 39, -1, -1, + 42, 43, 44, -1, 46, 47, 48, 49, 50, 51, + 52, 53, 54, 55, 56, 57, -1, 59, 60, 61, + 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, + 72, 73, -1, 75, 76, 77, 78, 79, -1, 81, + -1, 83, 84, 85, 86, 87, 88, 89, 90, 91, + 92, -1, 94, 95, 96, 97, 98, 99, -1, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, -1, 118, -1, 120, 121, 122, 123, 124, 125, -1, -1, 128, 129, 130, 131, -1, -1, 134, 135, 136, 137, 138, -1, 140, 141, 142, -1, 144, 145, 146, -1, 148, 149, 150, 151, - 152, 153, 154, 155, 156, 157, 158, 159, -1, 161, - -1, 163, 164, 165, 166, -1, 168, -1, 170, -1, - 172, -1, 174, 175, 176, -1, 178, -1, 180, -1, + 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, + -1, 163, 164, 165, 166, -1, 168, -1, 170, 171, + -1, 173, 174, 175, 176, 177, 178, -1, 180, -1, 182, 183, 184, 185, -1, 187, 188, 189, 190, 191, - 192, 193, -1, 195, 196, 197, 198, -1, 200, 201, - 202, 203, 204, 205, 206, -1, 208, -1, 210, 211, + 192, 193, 194, 195, 196, 197, 198, -1, 200, 201, + 202, 203, 204, 205, 206, -1, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, -1, 219, -1, 221, - -1, -1, 224, -1, 226, 227, 228, 229, 230, 231, - -1, -1, 234, -1, 236, -1, -1, 239, 240, 241, + 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, + -1, -1, 234, 235, 236, 237, -1, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, - 262, 263, 264, 265, 266, 267, 268, -1, 270, 271, - 272, 273, 274, -1, 276, 277, -1, 279, -1, 281, + 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, + 272, 273, 274, -1, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, -1, 288, 289, -1, -1, - 292, 293, 294, -1, -1, 297, 298, 299, -1, 301, - -1, 303, 304, 305, 306, 307, 308, 309, 310, 311, - 312, 313, 314, 315, 316, 317, -1, 319, 320, 321, - -1, 323, 324, 325, 326, 327, 328, -1, 330, 331, + 292, 293, 294, -1, -1, 297, 298, 299, 300, 301, + 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, + 312, 313, 314, -1, -1, -1, -1, 319, 320, 321, + 322, 323, 324, 325, 326, 327, 328, -1, 330, 331, 332, 333, 334, 335, -1, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, -1, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, -1, - 362, 363, -1, 365, 366, 367, 368, 369, 370, 371, + 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, - 382, -1, 384, 385, 386, 387, 388, 389, 390, 391, - 392, -1, -1, 395, 396, 397, 398, -1, 400, 401, + -1, -1, 384, 385, 386, 387, 388, 389, 390, 391, + 392, -1, 394, 395, 396, 397, 398, -1, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, - 412, 413, 414, -1, -1, 417, 418, 419, 420, -1, + 412, 413, 414, -1, -1, 417, 418, -1, 420, 421, 422, 423, 424, 425, 426, -1, 428, 429, 430, -1, - -1, 433, 434, 435, 436, 437, -1, 439, 440, 441, + -1, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, -1, -1, 449, 450, 451, - 452, 453, 454, 455, 456, -1, 458, 459, 460, 461, - 462, 463, 464, 465, -1, 467, -1, 469, 470, 471, - 472, 473, 474, 475, -1, -1, 478, -1, 480, 481, + -1, 453, 454, 455, 456, -1, 458, 459, 460, 461, + 462, 463, 464, 465, -1, 467, 468, 469, 470, 471, + 472, 473, 474, 475, -1, -1, 478, -1, -1, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, - -1, 3, 504, 5, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 518, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, 509, 510, -1, + -1, -1, -1, -1, 516, -1, 518, -1, -1, -1, + -1, -1, 524, 525, 526, 527, 3, 4, 5, 6, + 7, 8, 9, 10, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 22, 23, 24, 25, 26, + 27, 28, 29, -1, 31, 32, 33, -1, -1, -1, + -1, -1, 39, -1, -1, 42, 43, 44, -1, 46, + 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, + 57, -1, 59, 60, 61, 62, 63, 64, 65, 66, + 67, 68, 69, 70, 71, 72, 73, -1, 75, 76, + 77, 78, 79, -1, 81, -1, 83, 84, 85, 86, + 87, 88, 89, 90, 91, 92, -1, 94, 95, 96, + 97, 98, 99, -1, 101, 102, 103, 104, 105, 106, + 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, + -1, 118, -1, 120, 121, 122, 123, 124, 125, -1, + -1, 128, 129, 130, 131, -1, -1, 134, 135, 136, + 137, 138, -1, 140, 141, 142, -1, 144, 145, 146, + -1, 148, 149, 150, 151, 152, 153, 154, 155, 156, + 157, 158, 159, 160, 161, -1, 163, 164, 165, 166, + -1, 168, -1, 170, 171, -1, 173, 174, 175, 176, + 177, 178, -1, 180, -1, 182, 183, 184, 185, -1, + 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, + 197, 198, -1, 200, 201, 202, 203, 204, 205, 206, + -1, 208, 209, 210, 211, 212, 213, 214, 215, 216, + 217, -1, 219, -1, 221, -1, 223, 224, 225, 226, + 227, 228, 229, 230, 231, -1, -1, 234, 235, 236, + 237, -1, 239, 240, 241, 242, 243, 244, 245, 246, + 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, + 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, + 267, 268, 269, 270, 271, 272, 273, 274, -1, 276, + 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, + -1, 288, 289, -1, -1, 292, 293, 294, -1, -1, + 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, + 307, 308, 309, 310, 311, 312, 313, 314, -1, -1, + -1, -1, 319, 320, 321, 322, 323, 324, 325, 326, + 327, 328, -1, 330, 331, 332, 333, 334, 335, -1, + 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, + -1, 348, 349, 350, 351, 352, 353, 354, 355, 356, + 357, 358, 359, 360, -1, 362, 363, 364, 365, 366, + 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, + 377, 378, 379, 380, 381, -1, -1, 384, 385, 386, + 387, 388, 389, 390, 391, 392, -1, 394, 395, 396, + 397, 398, -1, 400, 401, 402, 403, 404, 405, 406, + 407, 408, 409, 410, 411, 412, 413, 414, -1, -1, + 417, 418, -1, 420, 421, 422, 423, 424, 425, 426, + -1, 428, 429, 430, -1, -1, 433, 434, 435, 436, + 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, + -1, -1, 449, 450, 451, -1, 453, 454, 455, 456, + -1, 458, 459, 460, 461, 462, 463, 464, 465, -1, + 467, 468, 469, 470, 471, 472, 473, 474, 475, -1, + -1, 478, -1, -1, 481, 482, 483, 484, 485, 486, + 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, + 497, 498, 499, 500, 501, -1, -1, -1, -1, -1, + -1, -1, 509, 510, -1, -1, -1, -1, -1, 516, + -1, 518, -1, -1, -1, -1, -1, 524, 525, 526, + 527, 3, 4, 5, 6, 7, -1, 9, 10, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 22, 23, 24, 25, 26, 27, 28, 29, -1, 31, - 32, 33, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 43, 44, -1, 46, 47, 48, -1, 50, 51, - 52, 53, 54, -1, 56, 57, -1, 59, 60, 61, - 62, 63, 64, -1, -1, 67, 68, 69, 70, 71, - 72, 73, -1, 75, 76, 77, 78, 79, -1, -1, - -1, 83, 84, 85, 86, 87, 88, -1, 90, 91, - 92, -1, 94, 95, 96, 97, 98, 99, -1, -1, + 32, 33, -1, -1, -1, -1, -1, 39, -1, -1, + 42, 43, 44, -1, 46, 47, 48, 49, 50, 51, + 52, 53, 54, 55, 56, 57, -1, 59, 60, 61, + 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, + 72, 73, -1, 75, 76, 77, 78, 79, -1, 81, + -1, 83, 84, 85, 86, 87, 88, 89, 90, 91, + 92, -1, 94, 95, 96, 97, 98, 99, -1, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, -1, 118, -1, 120, 121, 122, 123, 124, 125, -1, -1, 128, 129, 130, 131, -1, -1, 134, 135, 136, 137, 138, -1, 140, 141, 142, -1, 144, 145, 146, -1, 148, 149, 150, 151, - 152, 153, 154, 155, 156, 157, 158, 159, -1, 161, - -1, 163, 164, 165, 166, -1, 168, -1, 170, -1, - 172, -1, 174, 175, 176, -1, 178, -1, 180, -1, + 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, + -1, 163, 164, 165, 166, -1, 168, -1, 170, 171, + -1, 173, 174, 175, 176, 177, 178, -1, 180, 181, 182, 183, 184, 185, -1, 187, 188, 189, 190, 191, - 192, 193, -1, 195, 196, 197, 198, -1, 200, 201, - 202, 203, 204, 205, 206, -1, 208, -1, 210, 211, + 192, 193, 194, 195, 196, 197, 198, -1, 200, 201, + 202, 203, 204, 205, 206, -1, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, -1, 219, -1, 221, - -1, -1, 224, -1, 226, 227, 228, 229, 230, 231, - -1, -1, 234, -1, 236, -1, -1, 239, 240, 241, + 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, + -1, -1, 234, 235, 236, 237, -1, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, - 262, 263, 264, 265, 266, 267, 268, -1, 270, 271, - 272, 273, 274, -1, 276, 277, -1, 279, -1, 281, + 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, + 272, 273, 274, -1, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, -1, 288, 289, -1, -1, - 292, 293, 294, -1, -1, 297, 298, 299, -1, 301, - -1, 303, 304, 305, 306, 307, 308, 309, 310, 311, - 312, 313, 314, 315, 316, 317, -1, 319, 320, 321, - -1, 323, 324, 325, 326, 327, 328, -1, 330, 331, + 292, 293, 294, -1, -1, 297, 298, 299, 300, 301, + 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, + 312, 313, 314, -1, -1, -1, -1, 319, 320, 321, + 322, 323, 324, 325, 326, 327, 328, -1, 330, 331, 332, 333, 334, 335, -1, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, -1, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, -1, - 362, 363, -1, 365, 366, 367, 368, 369, 370, 371, + 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, - 382, -1, 384, 385, 386, 387, 388, 389, 390, 391, - 392, -1, -1, 395, 396, 397, 398, -1, 400, 401, + -1, -1, 384, 385, 386, 387, 388, 389, 390, 391, + 392, -1, 394, 395, 396, 397, 398, -1, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, - 412, 413, 414, -1, -1, 417, 418, 419, 420, -1, + 412, 413, 414, -1, -1, 417, 418, -1, 420, 421, 422, 423, 424, 425, 426, -1, 428, 429, 430, -1, - -1, 433, 434, 435, 436, 437, -1, 439, 440, 441, + -1, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, -1, -1, 449, 450, 451, - 452, 453, 454, 455, 456, -1, 458, 459, 460, 461, - 462, 463, 464, 465, -1, 467, -1, 469, 470, 471, - 472, 473, 474, 475, -1, -1, 478, -1, 480, 481, + -1, 453, 454, 455, 456, -1, 458, 459, 460, 461, + 462, 463, 464, 465, -1, 467, 468, 469, 470, 471, + 472, 473, 474, 475, -1, -1, 478, -1, -1, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, - -1, 3, 504, 5, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 518, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 516, -1, 518, -1, -1, -1, + -1, -1, 524, 525, 526, 527, 3, 4, 5, 6, + 7, -1, 9, 10, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 22, 23, 24, 25, 26, + 27, 28, 29, -1, 31, 32, 33, -1, -1, -1, + -1, -1, 39, -1, -1, 42, 43, 44, -1, 46, + 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, + 57, -1, 59, 60, 61, 62, 63, 64, 65, 66, + 67, 68, 69, 70, 71, 72, 73, -1, 75, 76, + 77, 78, 79, -1, 81, -1, 83, 84, 85, 86, + 87, 88, 89, 90, 91, 92, -1, 94, 95, 96, + 97, 98, 99, -1, 101, 102, 103, 104, 105, 106, + 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, + -1, 118, -1, 120, 121, 122, 123, 124, 125, -1, + -1, 128, 129, 130, 131, -1, -1, 134, 135, 136, + 137, 138, -1, 140, 141, 142, -1, 144, 145, 146, + -1, 148, 149, 150, 151, 152, 153, 154, 155, 156, + 157, 158, 159, 160, 161, -1, 163, 164, 165, 166, + -1, 168, -1, 170, 171, -1, 173, 174, 175, 176, + 177, 178, -1, 180, -1, 182, 183, 184, 185, -1, + 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, + 197, 198, -1, 200, 201, 202, 203, 204, 205, 206, + -1, 208, 209, 210, 211, 212, 213, 214, 215, 216, + 217, -1, 219, -1, 221, 222, 223, 224, 225, 226, + 227, 228, 229, 230, 231, -1, -1, 234, 235, 236, + 237, -1, 239, 240, 241, 242, 243, 244, 245, 246, + 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, + 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, + 267, 268, 269, 270, 271, 272, 273, 274, -1, 276, + 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, + -1, 288, 289, -1, -1, 292, 293, 294, -1, -1, + 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, + 307, 308, 309, 310, 311, 312, 313, 314, -1, -1, + -1, -1, 319, 320, 321, 322, 323, 324, 325, 326, + 327, 328, -1, 330, 331, 332, 333, 334, 335, -1, + 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, + -1, 348, 349, 350, 351, 352, 353, 354, 355, 356, + 357, 358, 359, 360, -1, 362, 363, 364, 365, 366, + 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, + 377, 378, 379, 380, 381, -1, -1, 384, 385, 386, + 387, 388, 389, 390, 391, 392, -1, 394, 395, 396, + 397, 398, -1, 400, 401, 402, 403, 404, 405, 406, + 407, 408, 409, 410, 411, 412, 413, 414, -1, -1, + 417, 418, -1, 420, 421, 422, 423, 424, 425, 426, + -1, 428, 429, 430, -1, -1, 433, 434, 435, 436, + 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, + -1, -1, 449, 450, 451, -1, 453, 454, 455, 456, + -1, 458, 459, 460, 461, 462, 463, 464, 465, -1, + 467, 468, 469, 470, 471, 472, 473, 474, 475, -1, + -1, 478, -1, -1, 481, 482, 483, 484, 485, 486, + 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, + 497, 498, 499, 500, 501, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 516, + -1, 518, -1, -1, -1, -1, -1, 524, 525, 526, + 527, 3, 4, 5, 6, 7, -1, 9, 10, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 22, 23, 24, 25, 26, 27, 28, 29, -1, 31, - 32, 33, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 43, 44, -1, 46, 47, 48, -1, 50, 51, - 52, 53, 54, -1, 56, 57, -1, 59, 60, 61, - 62, 63, 64, -1, -1, 67, 68, 69, 70, 71, - 72, 73, -1, 75, 76, 77, 78, 79, -1, -1, - -1, 83, 84, 85, 86, 87, 88, -1, 90, 91, - 92, -1, 94, 95, 96, 97, 98, 99, -1, -1, + 32, 33, -1, -1, -1, -1, -1, 39, -1, -1, + 42, 43, 44, -1, 46, 47, 48, 49, 50, 51, + 52, 53, 54, 55, 56, 57, -1, 59, 60, 61, + 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, + 72, 73, -1, 75, 76, 77, 78, 79, -1, 81, + -1, 83, 84, 85, 86, 87, 88, 89, 90, 91, + 92, -1, 94, 95, 96, 97, 98, 99, -1, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, -1, 118, -1, 120, 121, 122, 123, 124, 125, -1, -1, 128, 129, 130, 131, -1, -1, 134, 135, 136, 137, 138, -1, 140, 141, 142, -1, 144, 145, 146, -1, 148, 149, 150, 151, - 152, 153, 154, 155, 156, 157, 158, 159, -1, 161, - -1, 163, 164, 165, 166, -1, 168, -1, 170, -1, - -1, -1, 174, 175, 176, -1, 178, -1, 180, -1, + 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, + -1, 163, 164, 165, 166, -1, 168, -1, 170, 171, + -1, 173, 174, 175, 176, 177, 178, -1, 180, -1, 182, 183, 184, 185, -1, 187, 188, 189, 190, 191, - 192, 193, -1, 195, 196, 197, 198, -1, 200, 201, - 202, 203, 204, 205, 206, -1, 208, -1, 210, 211, + 192, 193, 194, 195, 196, 197, 198, -1, 200, 201, + 202, 203, 204, 205, 206, -1, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, -1, 219, -1, 221, - -1, -1, 224, -1, 226, 227, 228, 229, 230, 231, - -1, -1, 234, -1, 236, -1, -1, 239, 240, 241, + 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, + -1, -1, 234, 235, 236, 237, -1, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, - 262, 263, 264, 265, 266, 267, 268, -1, 270, 271, - 272, 273, 274, -1, 276, 277, -1, 279, -1, 281, + 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, + 272, 273, 274, -1, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, -1, 288, 289, -1, -1, - 292, 293, 294, -1, -1, 297, 298, 299, -1, 301, - -1, 303, 304, 305, 306, 307, 308, 309, 310, 311, + 292, 293, 294, -1, -1, 297, 298, 299, 300, 301, + 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, -1, -1, -1, -1, 319, 320, 321, - -1, 323, 324, 325, 326, 327, 328, -1, 330, 331, + 322, 323, 324, 325, 326, 327, 328, -1, 330, 331, 332, 333, 334, 335, -1, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, -1, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, -1, - 362, 363, -1, 365, 366, 367, 368, 369, 370, 371, + 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, -1, -1, 384, 385, 386, 387, 388, 389, 390, 391, - 392, -1, -1, 395, 396, 397, 398, -1, 400, 401, + 392, -1, 394, 395, 396, 397, 398, -1, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, - 412, 413, 414, -1, -1, 417, 418, -1, 420, -1, + 412, 413, 414, -1, -1, 417, 418, -1, 420, 421, 422, 423, 424, 425, 426, -1, 428, 429, 430, -1, - -1, 433, 434, 435, 436, 437, -1, 439, 440, 441, + -1, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, -1, -1, 449, 450, 451, -1, 453, 454, 455, 456, -1, 458, 459, 460, 461, - 462, 463, 464, 465, -1, 467, -1, 469, 470, 471, + 462, 463, 464, 465, -1, 467, 468, 469, 470, 471, 472, 473, 474, 475, -1, -1, 478, -1, -1, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, - 3, -1, 5, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 518, -1, -1, 22, - 23, 24, 25, 26, 27, 28, 29, -1, 31, 32, - 33, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 43, 44, -1, 46, 47, 48, -1, 50, 51, 52, - 53, 54, -1, 56, 57, -1, 59, 60, 61, 62, - 63, 64, -1, -1, 67, 68, 69, 70, 71, 72, - 73, -1, 75, 76, 77, 78, 79, -1, -1, -1, - 83, 84, 85, 86, 87, 88, -1, 90, 91, 92, - -1, 94, 95, 96, 97, 98, 99, -1, -1, 102, - 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, - 113, 114, 115, 116, -1, 118, -1, 120, 121, 122, - 123, 124, 125, -1, -1, 128, 129, 130, 131, -1, - -1, 134, 135, 136, 137, 138, -1, 140, 141, 142, - -1, 144, 145, 146, -1, 148, 149, 150, 151, 152, - 153, 154, 155, 156, 157, 158, 159, -1, 161, -1, - 163, 164, 165, 166, -1, 168, -1, 170, -1, -1, - -1, 174, 175, 176, -1, 178, -1, 180, -1, 182, - 183, 184, 185, -1, 187, 188, 189, 190, 191, 192, - 193, -1, 195, 196, 197, 198, -1, 200, 201, 202, - 203, 204, 205, 206, -1, 208, -1, 210, 211, 212, - 213, 214, 215, 216, 217, -1, 219, -1, 221, -1, - -1, 224, -1, 226, 227, 228, 229, 230, 231, -1, - -1, 234, -1, 236, -1, -1, 239, 240, 241, 242, - 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, - 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, - 263, 264, 265, 266, 267, 268, -1, 270, 271, 272, - 273, 274, -1, 276, 277, -1, 279, -1, 281, 282, - 283, 284, 285, 286, -1, 288, 289, -1, -1, 292, - 293, 294, -1, -1, 297, 298, 299, -1, 301, -1, - 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, - 313, 314, -1, -1, -1, -1, 319, 320, 321, -1, - 323, 324, 325, 326, 327, 328, -1, 330, 331, 332, - 333, 334, 335, -1, 337, 338, 339, 340, 341, 342, - 343, 344, 345, 346, -1, 348, 349, 350, 351, 352, - 353, 354, 355, 356, 357, 358, 359, 360, -1, 362, - 363, -1, 365, 366, 367, 368, 369, 370, 371, 372, - 373, 374, 375, 376, 377, 378, 379, 380, 381, -1, - -1, 384, 385, 386, 387, 388, 389, 390, 391, 392, - -1, -1, 395, 396, 397, 398, -1, 400, 401, 402, - 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, - 413, 414, -1, -1, 417, 418, -1, 420, -1, 422, - 423, 424, 425, 426, -1, 428, 429, 430, -1, -1, - 433, 434, 435, 436, 437, -1, 439, 440, 441, 442, - 443, 444, 445, 446, -1, -1, 449, 450, 451, -1, - 453, 454, 455, 456, -1, 458, 459, 460, 461, 462, - 463, 464, 465, -1, 467, -1, 469, 470, 471, 472, - 473, 474, 475, -1, -1, 478, -1, -1, 481, 482, - 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, - 493, 494, 495, 496, 497, 498, 499, 500, 501, 3, - -1, 5, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 518, -1, -1, 22, 23, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 516, -1, 518, -1, -1, -1, + -1, -1, 524, 525, 526, 527, 3, 4, 5, 6, + 7, 8, 9, 10, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 22, 23, 24, 25, 26, + 27, 28, 29, -1, 31, 32, 33, -1, -1, -1, + -1, -1, 39, -1, -1, 42, 43, 44, -1, 46, + 47, 48, 49, 50, 51, 52, -1, 54, 55, 56, + 57, -1, 59, 60, 61, 62, 63, 64, 65, 66, + 67, 68, 69, 70, 71, 72, 73, -1, 75, 76, + 77, 78, 79, -1, 81, -1, 83, 84, 85, 86, + 87, 88, 89, 90, 91, 92, -1, 94, 95, 96, + 97, 98, 99, -1, 101, 102, 103, 104, 105, 106, + 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, + 117, 118, -1, 120, 121, 122, 123, 124, 125, -1, + -1, 128, 129, 130, 131, -1, -1, 134, 135, 136, + 137, 138, -1, 140, 141, 142, -1, 144, -1, 146, + -1, 148, 149, 150, 151, 152, 153, 154, 155, 156, + 157, 158, 159, 160, 161, -1, 163, 164, 165, 166, + -1, 168, -1, 170, 171, -1, 173, 174, 175, 176, + -1, 178, -1, 180, -1, 182, 183, 184, 185, -1, + 187, 188, 189, 190, 191, 192, 193, -1, 195, 196, + 197, 198, -1, 200, 201, 202, 203, 204, 205, 206, + -1, 208, 209, 210, 211, 212, 213, 214, 215, 216, + 217, -1, 219, -1, 221, -1, -1, 224, 225, 226, + 227, 228, 229, 230, 231, -1, -1, 234, 235, 236, + -1, -1, 239, 240, 241, 242, 243, 244, 245, 246, + 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, + 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, + 267, 268, 269, 270, 271, 272, 273, 274, -1, 276, + 277, -1, 279, 280, 281, 282, 283, 284, 285, 286, + -1, 288, 289, -1, -1, 292, 293, 294, -1, -1, + 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, + 307, 308, 309, 310, 311, 312, 313, 314, -1, -1, + -1, -1, 319, 320, 321, 322, 323, 324, 325, 326, + 327, 328, -1, 330, 331, 332, 333, 334, 335, -1, + 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, + -1, 348, 349, 350, 351, 352, 353, 354, 355, 356, + 357, 358, 359, 360, -1, 362, 363, 364, 365, 366, + 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, + 377, 378, 379, 380, 381, -1, -1, 384, 385, 386, + 387, 388, 389, 390, 391, 392, -1, -1, 395, 396, + 397, 398, -1, 400, 401, 402, 403, 404, 405, 406, + 407, 408, 409, 410, 411, 412, 413, 414, -1, -1, + 417, 418, -1, 420, 421, 422, 423, 424, 425, 426, + -1, 428, 429, 430, -1, -1, 433, 434, 435, 436, + 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, + -1, -1, 449, 450, 451, -1, 453, 454, 455, 456, + -1, 458, 459, 460, 461, 462, 463, 464, 465, -1, + 467, 468, 469, 470, 471, 472, 473, 474, 475, -1, + -1, 478, -1, -1, 481, 482, 483, 484, 485, 486, + 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, + 497, 498, 499, 500, 501, -1, -1, -1, -1, -1, + -1, -1, 509, 510, 511, -1, 3, 4, 5, 516, + -1, 518, 9, -1, -1, -1, -1, 524, 525, 526, + 527, -1, -1, -1, -1, 22, 23, 24, 25, 26, + 27, 28, 29, -1, 31, 32, 33, -1, -1, -1, + 37, -1, -1, -1, -1, 42, 43, 44, -1, 46, + 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, + 57, -1, 59, 60, 61, 62, 63, 64, -1, -1, + 67, 68, 69, 70, 71, 72, 73, -1, 75, 76, + 77, 78, 79, -1, 81, -1, 83, 84, 85, 86, + 87, 88, 89, 90, 91, 92, -1, 94, 95, 96, + 97, 98, 99, -1, 101, 102, 103, 104, 105, 106, + 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, + -1, 118, -1, 120, 121, 122, 123, 124, 125, -1, + -1, 128, 129, 130, 131, -1, -1, 134, 135, 136, + 137, 138, -1, 140, 141, 142, -1, 144, 145, 146, + -1, 148, 149, 150, 151, 152, 153, 154, 155, 156, + 157, 158, 159, 160, 161, -1, 163, 164, 165, 166, + -1, 168, -1, 170, 171, -1, 173, 174, 175, 176, + 177, 178, -1, 180, -1, 182, 183, 184, 185, -1, + 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, + 197, 198, -1, 200, 201, 202, 203, 204, 205, 206, + -1, 208, 209, 210, 211, 212, 213, 214, 215, 216, + 217, -1, 219, -1, 221, 222, 223, 224, 225, 226, + 227, 228, 229, 230, 231, -1, -1, 234, 235, 236, + 237, -1, 239, 240, 241, 242, 243, 244, 245, 246, + 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, + 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, + 267, 268, 269, 270, 271, 272, 273, 274, -1, 276, + 277, 278, 279, -1, 281, 282, 283, 284, 285, 286, + -1, 288, 289, 290, -1, 292, 293, 294, -1, -1, + 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, + 307, 308, 309, 310, 311, 312, 313, 314, -1, -1, + -1, -1, 319, 320, 321, 322, 323, 324, 325, 326, + 327, 328, -1, 330, 331, 332, 333, 334, 335, -1, + 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, + -1, 348, 349, 350, 351, 352, 353, 354, 355, 356, + 357, 358, 359, 360, -1, 362, 363, 364, 365, 366, + 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, + 377, 378, 379, 380, 381, -1, 383, 384, 385, 386, + 387, 388, 389, 390, 391, 392, -1, 394, 395, 396, + 397, 398, -1, 400, 401, 402, 403, 404, 405, 406, + 407, 408, 409, 410, 411, 412, 413, 414, -1, -1, + 417, 418, -1, 420, 421, 422, 423, 424, 425, 426, + -1, 428, 429, 430, -1, -1, 433, 434, 435, 436, + 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, + -1, -1, 449, 450, 451, -1, 453, 454, 455, 456, + -1, 458, 459, 460, 461, 462, 463, 464, 465, -1, + 467, 468, 469, 470, 471, 472, 473, 474, 475, -1, + -1, 478, -1, -1, 481, 482, 483, 484, 485, 486, + 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, + 497, 498, 499, 500, 501, -1, -1, -1, -1, -1, + -1, -1, 509, 510, 511, 3, -1, -1, -1, 516, + -1, 518, 10, -1, -1, -1, -1, -1, -1, -1, + 527, -1, -1, -1, 22, 23, 24, 25, 26, 27, + 28, 29, -1, 31, 32, 33, -1, -1, -1, -1, + -1, 39, -1, -1, 42, 43, 44, -1, 46, 47, + 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, + -1, 59, 60, 61, 62, 63, 64, 65, 66, 67, + 68, 69, 70, 71, 72, 73, -1, 75, 76, 77, + 78, 79, -1, 81, -1, 83, 84, 85, 86, 87, + 88, 89, 90, 91, 92, -1, 94, 95, 96, 97, + 98, 99, -1, 101, 102, 103, 104, 105, 106, 107, + 108, 109, 110, 111, 112, 113, 114, 115, 116, -1, + 118, -1, 120, 121, 122, 123, 124, 125, -1, -1, + 128, 129, 130, 131, -1, -1, 134, 135, 136, 137, + 138, -1, 140, 141, 142, -1, 144, 145, 146, -1, + 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, + 158, 159, -1, 161, -1, 163, 164, 165, 166, -1, + 168, -1, 170, 171, -1, 173, 174, 175, 176, 177, + 178, -1, 180, -1, 182, 183, 184, 185, -1, 187, + 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, + 198, -1, 200, 201, 202, 203, 204, 205, 206, -1, + 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, + -1, 219, -1, 221, 222, 223, 224, 225, 226, 227, + 228, 229, 230, 231, -1, -1, 234, 235, 236, 237, + -1, 239, 240, 241, 242, 243, 244, 245, 246, 247, + 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, + 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, + 268, 269, 270, 271, 272, 273, 274, -1, 276, 277, + 278, 279, -1, 281, 282, 283, 284, 285, 286, -1, + 288, 289, -1, -1, 292, 293, 294, -1, -1, 297, + 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, + 308, 309, 310, 311, 312, 313, 314, -1, -1, -1, + -1, 319, 320, 321, 322, 323, 324, 325, 326, 327, + 328, -1, 330, 331, 332, 333, 334, 335, -1, 337, + 338, 339, 340, 341, 342, 343, 344, 345, 346, -1, + 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, + 358, 359, 360, -1, 362, 363, 364, 365, 366, 367, + 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, + 378, 379, 380, 381, -1, -1, 384, 385, 386, 387, + 388, 389, 390, 391, 392, -1, 394, 395, 396, 397, + 398, -1, 400, 401, 402, 403, 404, 405, 406, 407, + 408, 409, 410, 411, 412, 413, 414, -1, -1, 417, + 418, -1, 420, 421, 422, 423, 424, 425, 426, -1, + 428, 429, 430, -1, -1, 433, 434, 435, 436, 437, + -1, 439, 440, 441, 442, 443, 444, 445, 446, -1, + -1, 449, 450, 451, -1, 453, 454, 455, 456, -1, + 458, 459, 460, 461, 462, 463, 464, 465, -1, 467, + 468, 469, 470, 471, 472, 473, 474, 475, -1, -1, + 478, -1, -1, 481, 482, 483, 484, 485, 486, 487, + 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, + 498, 499, 500, 501, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 3, 4, -1, 516, -1, + 518, 9, 10, -1, -1, -1, 524, 525, 526, 527, + -1, -1, -1, -1, 22, 23, 24, 25, 26, 27, + 28, 29, -1, 31, 32, 33, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 43, 44, -1, 46, 47, + 48, -1, 50, 51, 52, 53, 54, -1, 56, 57, + -1, 59, 60, 61, 62, 63, 64, -1, -1, 67, + 68, 69, 70, 71, 72, 73, -1, 75, 76, 77, + 78, 79, -1, -1, -1, 83, 84, 85, 86, 87, + 88, -1, 90, 91, 92, -1, 94, 95, 96, 97, + 98, 99, -1, -1, 102, 103, 104, 105, 106, 107, + 108, 109, 110, 111, 112, 113, 114, 115, 116, -1, + 118, -1, 120, 121, 122, 123, 124, 125, -1, -1, + 128, 129, 130, 131, -1, -1, 134, 135, 136, 137, + 138, -1, 140, 141, 142, -1, 144, 145, 146, -1, + 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, + 158, 159, -1, 161, -1, 163, 164, 165, 166, -1, + 168, -1, 170, -1, -1, -1, 174, 175, 176, -1, + 178, -1, 180, -1, 182, 183, 184, 185, -1, 187, + 188, 189, 190, 191, 192, 193, -1, 195, 196, 197, + 198, -1, 200, 201, 202, 203, 204, 205, 206, -1, + 208, -1, 210, 211, 212, 213, 214, 215, 216, 217, + -1, 219, -1, 221, -1, -1, 224, -1, 226, 227, + 228, 229, 230, 231, -1, -1, 234, -1, 236, -1, + -1, 239, 240, 241, 242, 243, 244, 245, 246, 247, + 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, + 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, + 268, -1, 270, 271, 272, 273, 274, -1, 276, 277, + -1, 279, -1, 281, 282, 283, 284, 285, 286, -1, + 288, 289, -1, -1, 292, 293, 294, -1, -1, 297, + 298, 299, -1, 301, -1, 303, 304, 305, 306, 307, + 308, 309, 310, 311, 312, 313, 314, -1, -1, -1, + -1, 319, 320, 321, -1, 323, 324, 325, 326, 327, + 328, -1, 330, 331, 332, 333, 334, 335, -1, 337, + 338, 339, 340, 341, 342, 343, 344, 345, 346, -1, + 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, + 358, 359, 360, -1, 362, 363, -1, 365, 366, 367, + 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, + 378, 379, 380, 381, -1, -1, 384, 385, 386, 387, + 388, 389, 390, 391, 392, -1, -1, 395, 396, 397, + 398, -1, 400, 401, 402, 403, 404, 405, 406, 407, + 408, 409, 410, 411, 412, 413, 414, -1, -1, 417, + 418, -1, 420, -1, 422, 423, 424, 425, 426, -1, + 428, 429, 430, -1, -1, 433, 434, 435, 436, 437, + -1, 439, 440, 441, 442, 443, 444, 445, 446, -1, + -1, 449, 450, 451, -1, 453, 454, 455, 456, -1, + 458, 459, 460, 461, 462, 463, 464, 465, -1, 467, + -1, 469, 470, 471, 472, 473, 474, 475, -1, -1, + 478, -1, -1, 481, 482, 483, 484, 485, 486, 487, + 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, + 498, 499, 500, 501, -1, -1, -1, -1, -1, 3, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 524, 525, 22, 23, 24, 25, 26, 27, 28, 29, -1, 31, 32, 33, - -1, -1, -1, -1, -1, -1, -1, -1, -1, 43, + -1, -1, -1, -1, -1, -1, 40, -1, -1, 43, 44, -1, 46, 47, 48, -1, 50, 51, 52, 53, 54, -1, 56, 57, -1, 59, 60, 61, 62, 63, 64, -1, -1, 67, 68, 69, 70, 71, 72, 73, @@ -15662,22 +14971,22 @@ static const yytype_int16 yycheck[] = 114, 115, 116, -1, 118, -1, 120, 121, 122, 123, 124, 125, -1, -1, 128, 129, 130, 131, -1, -1, 134, 135, 136, 137, 138, -1, 140, 141, 142, -1, - 144, 145, 146, -1, 148, 149, 150, 151, 152, 153, - 154, 155, 156, 157, 158, 159, -1, 161, -1, 163, - 164, 165, 166, -1, 168, -1, 170, -1, -1, -1, + 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, + 154, 155, 156, 157, 158, 159, -1, 161, 162, 163, + 164, 165, 166, 167, 168, -1, 170, -1, -1, -1, 174, 175, 176, -1, 178, -1, 180, -1, 182, 183, 184, 185, -1, 187, 188, 189, 190, 191, 192, 193, -1, 195, 196, 197, 198, -1, 200, 201, 202, 203, 204, 205, 206, -1, 208, -1, 210, 211, 212, 213, - 214, 215, 216, 217, -1, 219, -1, 221, -1, -1, + 214, 215, 216, 217, 218, 219, -1, 221, -1, -1, 224, -1, 226, 227, 228, 229, 230, 231, -1, -1, - 234, -1, 236, -1, -1, 239, 240, 241, 242, 243, + 234, -1, 236, -1, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, -1, 270, 271, 272, 273, 274, -1, 276, 277, -1, 279, -1, 281, 282, 283, - 284, 285, 286, -1, 288, 289, -1, -1, 292, 293, - 294, -1, -1, 297, 298, 299, -1, 301, -1, 303, + 284, 285, 286, 287, 288, 289, -1, -1, 292, 293, + 294, -1, 296, 297, 298, 299, -1, 301, -1, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, -1, -1, -1, -1, 319, 320, 321, -1, 323, 324, 325, 326, 327, 328, -1, 330, 331, 332, 333, @@ -15692,14 +15001,14 @@ static const yytype_int16 yycheck[] = 414, -1, -1, 417, 418, -1, 420, -1, 422, 423, 424, 425, 426, -1, 428, 429, 430, -1, -1, 433, 434, 435, 436, 437, -1, 439, 440, 441, 442, 443, - 444, 445, 446, -1, -1, 449, 450, 451, -1, 453, + 444, 445, 446, 447, -1, 449, 450, 451, -1, 453, 454, 455, 456, -1, 458, 459, 460, 461, 462, 463, 464, 465, -1, 467, -1, 469, 470, 471, 472, 473, 474, 475, -1, -1, 478, -1, -1, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, 3, -1, 5, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, 518, -1, -1, 22, 23, 24, + -1, -1, -1, -1, -1, 519, -1, 22, 23, 24, 25, 26, 27, 28, 29, -1, 31, 32, 33, -1, -1, -1, -1, -1, -1, -1, -1, -1, 43, 44, -1, 46, 47, 48, -1, 50, 51, 52, 53, 54, @@ -15747,203 +15056,303 @@ static const yytype_int16 yycheck[] = 465, -1, 467, -1, 469, 470, 471, 472, 473, 474, 475, -1, -1, 478, -1, -1, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, - 495, 496, 497, 498, 499, 500, 501, 3, -1, 5, + 495, 496, 497, 498, 499, 500, 501, 3, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 518, -1, -1, 22, 23, 24, 25, - 26, 27, 28, 29, -1, 31, 32, 33, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 43, 44, -1, - 46, 47, 48, -1, 50, 51, 52, 53, 54, -1, + -1, -1, -1, 518, 519, -1, 22, 23, 24, 25, + 26, 27, 28, 29, -1, 31, 32, 33, 34, 35, + -1, 37, -1, -1, -1, -1, 42, 43, 44, -1, + 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, -1, 59, 60, 61, 62, 63, 64, -1, -1, 67, 68, 69, 70, 71, 72, 73, -1, 75, - 76, 77, 78, 79, -1, -1, -1, 83, 84, 85, - 86, 87, 88, -1, 90, 91, 92, -1, 94, 95, - 96, 97, 98, 99, -1, -1, 102, 103, 104, 105, + 76, 77, 78, 79, -1, 81, -1, 83, 84, 85, + 86, 87, 88, 89, 90, 91, 92, -1, 94, 95, + 96, 97, 98, 99, -1, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, -1, 118, -1, 120, 121, 122, 123, 124, 125, - -1, -1, 128, 129, 130, 131, -1, -1, 134, 135, + 126, 127, 128, 129, 130, 131, -1, -1, 134, 135, 136, 137, 138, -1, 140, 141, 142, -1, 144, 145, 146, -1, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, -1, 161, -1, 163, 164, 165, - 166, -1, 168, -1, 170, -1, -1, -1, 174, 175, - 176, -1, 178, -1, 180, -1, 182, 183, 184, 185, - -1, 187, 188, 189, 190, 191, 192, 193, -1, 195, + 166, -1, 168, -1, 170, 171, 172, 173, 174, 175, + 176, 177, 178, -1, 180, -1, 182, 183, 184, 185, + -1, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, -1, 200, 201, 202, 203, 204, 205, - 206, -1, 208, -1, 210, 211, 212, 213, 214, 215, - 216, 217, -1, 219, -1, 221, -1, -1, 224, -1, - 226, 227, 228, 229, 230, 231, -1, -1, 234, -1, - 236, -1, -1, 239, 240, 241, 242, 243, 244, 245, + 206, -1, 208, 209, 210, 211, 212, 213, 214, 215, + 216, 217, -1, 219, -1, 221, 222, 223, 224, 225, + 226, 227, 228, 229, 230, 231, -1, -1, 234, 235, + 236, 237, -1, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, - 266, 267, 268, -1, 270, 271, 272, 273, 274, -1, - 276, 277, -1, 279, -1, 281, 282, 283, 284, 285, + 266, 267, 268, 269, 270, 271, 272, 273, 274, -1, + 276, 277, 278, 279, -1, 281, 282, 283, 284, 285, 286, -1, 288, 289, -1, -1, 292, 293, 294, -1, - -1, 297, 298, 299, -1, 301, -1, 303, 304, 305, + -1, 297, 298, 299, 300, 301, 302, 303, 304, 305, + 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, + 316, 317, -1, 319, 320, 321, 322, 323, 324, 325, + 326, 327, 328, -1, 330, 331, 332, 333, 334, 335, + -1, 337, 338, 339, 340, 341, 342, 343, 344, 345, + 346, -1, 348, 349, 350, 351, 352, 353, 354, 355, + 356, 357, 358, 359, 360, -1, 362, 363, 364, 365, + 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, + 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, + 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, + 396, 397, 398, -1, 400, 401, 402, 403, 404, 405, + 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, + -1, 417, 418, 419, 420, 421, 422, 423, 424, 425, + 426, -1, 428, 429, 430, -1, -1, 433, 434, 435, + 436, 437, -1, 439, 440, 441, 442, 443, 444, 445, + 446, -1, -1, 449, 450, 451, 452, 453, 454, 455, + 456, -1, 458, 459, 460, 461, 462, 463, 464, 465, + -1, 467, 468, 469, 470, 471, 472, 473, 474, 475, + -1, -1, 478, -1, 480, 481, 482, 483, 484, 485, + 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, + 496, 497, 498, 499, 500, 501, -1, 3, 504, 5, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, 518, -1, -1, -1, 22, 23, 24, 25, + 26, 27, 28, 29, -1, 31, 32, 33, -1, -1, + -1, -1, -1, -1, -1, -1, 42, 43, 44, -1, + 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, + 56, 57, -1, 59, 60, 61, 62, 63, 64, -1, + 66, 67, 68, 69, 70, 71, 72, 73, -1, 75, + 76, 77, 78, 79, -1, 81, -1, 83, 84, 85, + 86, 87, 88, 89, 90, 91, 92, -1, 94, 95, + 96, 97, 98, 99, -1, 101, 102, 103, 104, 105, + 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, + 116, -1, 118, -1, 120, 121, 122, 123, 124, 125, + 126, 127, 128, 129, 130, 131, -1, -1, 134, 135, + 136, 137, 138, -1, 140, 141, 142, -1, 144, 145, + 146, -1, 148, 149, 150, 151, 152, 153, 154, 155, + 156, 157, 158, 159, -1, 161, -1, 163, 164, 165, + 166, -1, 168, -1, 170, 171, 172, 173, 174, 175, + 176, 177, 178, -1, 180, -1, 182, 183, 184, 185, + -1, 187, 188, 189, 190, 191, 192, 193, 194, 195, + 196, 197, 198, -1, 200, 201, 202, 203, 204, 205, + 206, -1, 208, 209, 210, 211, 212, 213, 214, 215, + 216, 217, -1, 219, -1, 221, 222, 223, 224, 225, + 226, 227, 228, 229, 230, 231, 232, -1, 234, 235, + 236, 237, -1, 239, 240, 241, 242, 243, 244, 245, + 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, + 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, + 266, 267, 268, 269, 270, 271, 272, 273, 274, -1, + 276, 277, 278, 279, -1, 281, 282, 283, 284, 285, + 286, -1, 288, 289, -1, 291, 292, 293, 294, -1, + -1, 297, 298, 299, 300, 301, 302, 303, 304, 305, + 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, + 316, 317, -1, 319, 320, 321, 322, 323, 324, 325, + 326, 327, 328, -1, 330, 331, 332, 333, 334, 335, + -1, 337, 338, 339, 340, 341, 342, 343, 344, 345, + 346, -1, 348, 349, 350, 351, 352, 353, 354, 355, + 356, 357, 358, 359, 360, -1, 362, 363, 364, 365, + 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, + 376, 377, 378, 379, 380, 381, 382, -1, 384, 385, + 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, + 396, 397, 398, -1, 400, 401, 402, 403, 404, 405, + 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, + -1, 417, 418, 419, 420, 421, 422, 423, 424, 425, + 426, -1, 428, 429, 430, -1, -1, 433, 434, 435, + 436, 437, -1, 439, 440, 441, 442, 443, 444, 445, + 446, -1, -1, 449, 450, 451, 452, 453, 454, 455, + 456, -1, 458, 459, 460, 461, 462, 463, 464, 465, + -1, 467, 468, 469, 470, 471, 472, 473, 474, 475, + -1, -1, 478, -1, 480, 481, 482, 483, 484, 485, + 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, + 496, 497, 498, 499, 500, 501, -1, 3, 504, 5, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, 518, -1, -1, -1, 22, 23, 24, 25, + 26, 27, 28, 29, -1, 31, 32, 33, -1, -1, + -1, -1, -1, -1, -1, -1, 42, 43, 44, -1, + 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, + 56, 57, -1, 59, 60, 61, 62, 63, 64, -1, + 66, 67, 68, 69, 70, 71, 72, 73, -1, 75, + 76, 77, 78, 79, -1, 81, -1, 83, 84, 85, + 86, 87, 88, 89, 90, 91, 92, -1, 94, 95, + 96, 97, 98, 99, -1, 101, 102, 103, 104, 105, + 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, + 116, -1, 118, -1, 120, 121, 122, 123, 124, 125, + -1, -1, 128, 129, 130, 131, -1, -1, 134, 135, + 136, 137, 138, -1, 140, 141, 142, -1, 144, 145, + 146, -1, 148, 149, 150, 151, 152, 153, 154, 155, + 156, 157, 158, 159, -1, 161, -1, 163, 164, 165, + 166, -1, 168, -1, 170, 171, -1, 173, 174, 175, + 176, 177, 178, -1, 180, -1, 182, 183, 184, 185, + -1, 187, 188, 189, 190, 191, 192, 193, 194, 195, + 196, 197, 198, -1, 200, 201, 202, 203, 204, 205, + 206, -1, 208, 209, 210, 211, 212, 213, 214, 215, + 216, 217, -1, 219, -1, 221, 222, 223, 224, 225, + 226, 227, 228, 229, 230, 231, 232, -1, 234, 235, + 236, 237, -1, 239, 240, 241, 242, 243, 244, 245, + 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, + 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, + 266, 267, 268, 269, 270, 271, 272, 273, 274, -1, + 276, 277, 278, 279, -1, 281, 282, 283, 284, 285, + 286, -1, 288, 289, -1, 291, 292, 293, 294, -1, + -1, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, -1, - -1, -1, -1, 319, 320, 321, -1, 323, 324, 325, + -1, -1, -1, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, -1, 330, 331, 332, 333, 334, 335, -1, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, -1, 348, 349, 350, 351, 352, 353, 354, 355, - 356, 357, 358, 359, 360, -1, 362, 363, -1, 365, + 356, 357, 358, 359, 360, -1, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, -1, -1, 384, 385, - 386, 387, 388, 389, 390, 391, 392, -1, -1, 395, + 386, 387, 388, 389, 390, 391, 392, -1, 394, 395, 396, 397, 398, -1, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, -1, - -1, 417, 418, -1, 420, -1, 422, 423, 424, 425, + -1, 417, 418, -1, 420, 421, 422, 423, 424, 425, 426, -1, 428, 429, 430, -1, -1, 433, 434, 435, 436, 437, -1, 439, 440, 441, 442, 443, 444, 445, 446, -1, -1, 449, 450, 451, -1, 453, 454, 455, 456, -1, 458, 459, 460, 461, 462, 463, 464, 465, - -1, 467, -1, 469, 470, 471, 472, 473, 474, 475, + -1, 467, 468, 469, 470, 471, 472, 473, 474, 475, -1, -1, 478, -1, -1, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, 3, -1, 5, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 518, -1, -1, 22, 23, 24, 25, 26, 27, 28, 29, -1, 31, 32, 33, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 43, 44, -1, 46, - 47, 48, -1, 50, 51, 52, 53, 54, -1, 56, - 57, -1, 59, 60, 61, 62, 63, 64, -1, -1, + -1, -1, -1, -1, -1, 42, 43, 44, -1, 46, + 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, + 57, -1, 59, 60, 61, 62, 63, 64, -1, 66, 67, 68, 69, 70, 71, 72, 73, -1, 75, 76, - 77, 78, 79, -1, -1, -1, 83, 84, 85, 86, - 87, 88, -1, 90, 91, 92, -1, 94, 95, 96, - 97, 98, 99, -1, -1, 102, 103, 104, 105, 106, + 77, 78, 79, -1, 81, -1, 83, 84, 85, 86, + 87, 88, 89, 90, 91, 92, -1, 94, 95, 96, + 97, 98, 99, -1, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, -1, 118, -1, 120, 121, 122, 123, 124, 125, -1, -1, 128, 129, 130, 131, -1, -1, 134, 135, 136, 137, 138, -1, 140, 141, 142, -1, 144, 145, 146, -1, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, -1, 161, -1, 163, 164, 165, 166, - -1, 168, -1, 170, -1, -1, -1, 174, 175, 176, - -1, 178, -1, 180, -1, 182, 183, 184, 185, -1, - 187, 188, 189, 190, 191, 192, 193, -1, 195, 196, + -1, 168, -1, 170, 171, -1, 173, 174, 175, 176, + 177, 178, -1, 180, -1, 182, 183, 184, 185, -1, + 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, -1, 200, 201, 202, 203, 204, 205, 206, - -1, 208, -1, 210, 211, 212, 213, 214, 215, 216, - 217, -1, 219, -1, 221, -1, -1, 224, -1, 226, - 227, 228, 229, 230, 231, -1, -1, 234, -1, 236, - -1, -1, 239, 240, 241, 242, 243, 244, 245, 246, + -1, 208, 209, 210, 211, 212, 213, 214, 215, 216, + 217, -1, 219, -1, 221, 222, 223, 224, 225, 226, + 227, 228, 229, 230, 231, -1, -1, 234, 235, 236, + 237, -1, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, - 267, 268, -1, 270, 271, 272, 273, 274, -1, 276, - 277, -1, 279, -1, 281, 282, 283, 284, 285, 286, - -1, 288, 289, -1, -1, 292, 293, 294, -1, -1, - 297, 298, 299, -1, 301, -1, 303, 304, 305, 306, + 267, 268, 269, 270, 271, 272, 273, 274, -1, 276, + 277, 278, 279, -1, 281, 282, 283, 284, 285, 286, + -1, 288, 289, -1, 291, 292, 293, 294, -1, -1, + 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, -1, -1, - -1, -1, 319, 320, 321, -1, 323, 324, 325, 326, + -1, -1, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, -1, 330, 331, 332, 333, 334, 335, -1, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, -1, 348, 349, 350, 351, 352, 353, 354, 355, 356, - 357, 358, 359, 360, -1, 362, 363, -1, 365, 366, + 357, 358, 359, 360, -1, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, -1, -1, 384, 385, 386, - 387, 388, 389, 390, 391, 392, -1, -1, 395, 396, + 387, 388, 389, 390, 391, 392, -1, 394, 395, 396, 397, 398, -1, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, -1, -1, - 417, 418, -1, 420, -1, 422, 423, 424, 425, 426, + 417, 418, -1, 420, 421, 422, 423, 424, 425, 426, -1, 428, 429, 430, -1, -1, 433, 434, 435, 436, 437, -1, 439, 440, 441, 442, 443, 444, 445, 446, -1, -1, 449, 450, 451, -1, 453, 454, 455, 456, -1, 458, 459, 460, 461, 462, 463, 464, 465, -1, - 467, -1, 469, 470, 471, 472, 473, 474, 475, -1, + 467, 468, 469, 470, 471, 472, 473, 474, 475, -1, -1, 478, -1, -1, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, - 497, 498, 499, 500, 501, 3, -1, 5, -1, -1, + 497, 498, 499, 500, 501, 3, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 518, -1, -1, 22, 23, 24, 25, 26, 27, 28, 29, -1, 31, 32, 33, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 43, 44, -1, 46, 47, - 48, -1, 50, 51, 52, 53, 54, -1, 56, 57, - -1, 59, 60, 61, 62, 63, 64, -1, -1, 67, + -1, -1, -1, -1, 42, 43, 44, -1, 46, 47, + 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, + -1, 59, 60, 61, 62, 63, 64, -1, 66, 67, 68, 69, 70, 71, 72, 73, -1, 75, 76, 77, - 78, 79, -1, -1, -1, 83, 84, 85, 86, 87, - 88, -1, 90, 91, 92, -1, 94, 95, 96, 97, - 98, 99, -1, -1, 102, 103, 104, 105, 106, 107, + 78, 79, -1, 81, -1, 83, 84, 85, 86, 87, + 88, 89, 90, 91, 92, -1, 94, 95, 96, 97, + 98, 99, -1, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, -1, 118, -1, 120, 121, 122, 123, 124, 125, -1, -1, 128, 129, 130, 131, -1, -1, 134, 135, 136, 137, 138, -1, 140, 141, 142, -1, 144, 145, 146, -1, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, -1, 161, -1, 163, 164, 165, 166, -1, - 168, -1, 170, -1, -1, -1, 174, 175, 176, -1, + 168, -1, 170, 171, -1, 173, 174, 175, 176, 177, 178, -1, 180, -1, 182, 183, 184, 185, -1, 187, - 188, 189, 190, 191, 192, 193, -1, 195, 196, 197, + 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, -1, 200, 201, 202, 203, 204, 205, 206, -1, - 208, -1, 210, 211, 212, 213, 214, 215, 216, 217, - -1, 219, -1, 221, -1, -1, 224, -1, 226, 227, - 228, 229, 230, 231, -1, -1, 234, -1, 236, -1, + 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, + -1, 219, -1, 221, 222, 223, 224, 225, 226, 227, + 228, 229, 230, 231, -1, -1, 234, 235, 236, 237, -1, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, - 268, -1, 270, 271, 272, 273, 274, -1, 276, 277, - -1, 279, -1, 281, 282, 283, 284, 285, 286, -1, + 268, 269, 270, 271, 272, 273, 274, -1, 276, 277, + 278, 279, -1, 281, 282, 283, 284, 285, 286, -1, 288, 289, -1, -1, 292, 293, 294, -1, -1, 297, - 298, 299, -1, 301, -1, 303, 304, 305, 306, 307, + 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, -1, -1, -1, - -1, 319, 320, 321, -1, 323, 324, 325, 326, 327, + -1, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, -1, 330, 331, 332, 333, 334, 335, -1, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, -1, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, - 358, 359, 360, -1, 362, 363, -1, 365, 366, 367, + 358, 359, 360, -1, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, -1, -1, 384, 385, 386, 387, - 388, 389, 390, 391, 392, -1, -1, 395, 396, 397, + 388, 389, 390, 391, 392, -1, 394, 395, 396, 397, 398, -1, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, -1, -1, 417, - 418, -1, 420, -1, 422, 423, 424, 425, 426, -1, + 418, -1, 420, 421, 422, 423, 424, 425, 426, -1, 428, 429, 430, -1, -1, 433, 434, 435, 436, 437, -1, 439, 440, 441, 442, 443, 444, 445, 446, -1, -1, 449, 450, 451, -1, 453, 454, 455, 456, -1, 458, 459, 460, 461, 462, 463, 464, 465, -1, 467, - -1, 469, 470, 471, 472, 473, 474, 475, -1, -1, + 468, 469, 470, 471, 472, 473, 474, 475, -1, -1, 478, -1, -1, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, - 498, 499, 500, 501, 3, -1, 5, -1, -1, -1, + 498, 499, 500, 501, 3, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 518, -1, -1, 22, 23, 24, 25, 26, 27, 28, 29, -1, 31, 32, 33, -1, -1, -1, -1, -1, - -1, -1, -1, -1, 43, 44, -1, 46, 47, 48, - -1, 50, 51, 52, 53, 54, -1, 56, 57, -1, - 59, 60, 61, 62, 63, 64, -1, -1, 67, 68, + -1, -1, -1, 42, 43, 44, -1, 46, 47, 48, + 49, 50, 51, 52, 53, 54, 55, 56, 57, -1, + 59, 60, 61, 62, 63, 64, -1, 66, 67, 68, 69, 70, 71, 72, 73, -1, 75, 76, 77, 78, - 79, -1, -1, -1, 83, 84, 85, 86, 87, 88, - -1, 90, 91, 92, -1, 94, 95, 96, 97, 98, - 99, -1, -1, 102, 103, 104, 105, 106, 107, 108, + 79, -1, 81, -1, 83, 84, 85, 86, 87, 88, + 89, 90, 91, 92, -1, 94, 95, 96, 97, 98, + 99, -1, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, -1, 118, -1, 120, 121, 122, 123, 124, 125, -1, -1, 128, 129, 130, 131, -1, -1, 134, 135, 136, 137, 138, -1, 140, 141, 142, -1, 144, 145, 146, -1, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, -1, 161, -1, 163, 164, 165, 166, -1, 168, - -1, 170, -1, -1, -1, 174, 175, 176, -1, 178, + -1, 170, 171, -1, 173, 174, 175, 176, 177, 178, -1, 180, -1, 182, 183, 184, 185, -1, 187, 188, - 189, 190, 191, 192, 193, -1, 195, 196, 197, 198, + 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, -1, 200, 201, 202, 203, 204, 205, 206, -1, 208, - -1, 210, 211, 212, 213, 214, 215, 216, 217, -1, - 219, -1, 221, -1, -1, 224, -1, 226, 227, 228, - 229, 230, 231, -1, -1, 234, -1, 236, -1, -1, + 209, 210, 211, 212, 213, 214, 215, 216, 217, -1, + 219, -1, 221, 222, 223, 224, 225, 226, 227, 228, + 229, 230, 231, -1, -1, 234, 235, 236, 237, -1, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, - -1, 270, 271, 272, 273, 274, -1, 276, 277, -1, + 269, 270, 271, 272, 273, 274, -1, 276, 277, 278, 279, -1, 281, 282, 283, 284, 285, 286, -1, 288, 289, -1, -1, 292, 293, 294, -1, -1, 297, 298, - 299, -1, 301, -1, 303, 304, 305, 306, 307, 308, + 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, -1, -1, -1, -1, - 319, 320, 321, -1, 323, 324, 325, 326, 327, 328, + 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, -1, 330, 331, 332, 333, 334, 335, -1, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, -1, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, - 359, 360, -1, 362, 363, -1, 365, 366, 367, 368, + 359, 360, -1, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, -1, -1, 384, 385, 386, 387, 388, - 389, 390, 391, 392, -1, -1, 395, 396, 397, 398, + 389, 390, 391, 392, -1, 394, 395, 396, 397, 398, -1, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, -1, -1, 417, 418, - -1, 420, -1, 422, 423, 424, 425, 426, -1, 428, + -1, 420, 421, 422, 423, 424, 425, 426, -1, 428, 429, 430, -1, -1, 433, 434, 435, 436, 437, -1, 439, 440, 441, 442, 443, 444, 445, 446, -1, -1, 449, 450, 451, -1, 453, 454, 455, 456, -1, 458, - 459, 460, 461, 462, 463, 464, 465, -1, 467, -1, + 459, 460, 461, 462, 463, 464, 465, -1, 467, 468, 469, 470, 471, 472, 473, 474, 475, -1, -1, 478, -1, -1, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, @@ -15959,6 +15368,156 @@ static const yytype_int16 yycheck[] = 90, 91, 92, -1, 94, 95, 96, 97, 98, 99, -1, -1, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, -1, 118, -1, + 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, + 130, 131, -1, -1, 134, 135, 136, 137, 138, -1, + 140, 141, 142, -1, 144, 145, 146, -1, 148, 149, + 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, + -1, 161, -1, 163, 164, 165, 166, -1, 168, -1, + 170, -1, 172, -1, 174, 175, 176, -1, 178, -1, + 180, -1, 182, 183, 184, 185, -1, 187, 188, 189, + 190, 191, 192, 193, -1, 195, 196, 197, 198, -1, + 200, 201, 202, 203, 204, 205, 206, -1, 208, -1, + 210, 211, 212, 213, 214, 215, 216, 217, -1, 219, + -1, 221, -1, -1, 224, -1, 226, 227, 228, 229, + 230, 231, -1, -1, 234, -1, 236, -1, -1, 239, + 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, + 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, + 260, 261, 262, 263, 264, 265, 266, 267, 268, -1, + 270, 271, 272, 273, 274, -1, 276, 277, -1, 279, + -1, 281, 282, 283, 284, 285, 286, -1, 288, 289, + -1, -1, 292, 293, 294, -1, -1, 297, 298, 299, + -1, 301, -1, 303, 304, 305, 306, 307, 308, 309, + 310, 311, 312, 313, 314, 315, 316, 317, -1, 319, + 320, 321, -1, 323, 324, 325, 326, 327, 328, -1, + 330, 331, 332, 333, 334, 335, -1, 337, 338, 339, + 340, 341, 342, 343, 344, 345, 346, -1, 348, 349, + 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, + 360, -1, 362, 363, -1, 365, 366, 367, 368, 369, + 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, + 380, 381, 382, -1, 384, 385, 386, 387, 388, 389, + 390, 391, 392, 393, -1, 395, 396, 397, 398, -1, + 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, + 410, 411, 412, 413, 414, 415, -1, 417, 418, 419, + 420, -1, 422, 423, 424, 425, 426, -1, 428, 429, + 430, -1, -1, 433, 434, 435, 436, 437, -1, 439, + 440, 441, 442, 443, 444, 445, 446, -1, -1, 449, + 450, 451, 452, 453, 454, 455, 456, -1, 458, 459, + 460, 461, 462, 463, 464, 465, -1, 467, -1, 469, + 470, 471, 472, 473, 474, 475, -1, -1, 478, -1, + 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, + 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, + 500, 501, -1, 3, 504, 5, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 518, -1, + -1, -1, 22, 23, 24, 25, 26, 27, 28, 29, + 30, 31, 32, 33, -1, -1, -1, -1, -1, -1, + -1, -1, -1, 43, 44, -1, 46, 47, 48, -1, + 50, 51, 52, 53, 54, -1, 56, 57, -1, 59, + 60, 61, 62, 63, 64, -1, -1, 67, 68, 69, + 70, 71, 72, 73, -1, 75, 76, 77, 78, 79, + -1, -1, -1, 83, 84, 85, 86, 87, 88, -1, + 90, 91, 92, -1, 94, 95, 96, 97, 98, 99, + -1, -1, 102, 103, 104, 105, 106, 107, 108, 109, + 110, 111, 112, 113, 114, 115, 116, -1, 118, -1, + 120, 121, 122, 123, 124, 125, -1, -1, 128, 129, + 130, 131, -1, -1, 134, 135, 136, 137, 138, -1, + 140, 141, 142, -1, 144, 145, 146, -1, 148, 149, + 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, + -1, 161, -1, 163, 164, 165, 166, -1, 168, -1, + 170, -1, 172, -1, 174, 175, 176, -1, 178, -1, + 180, -1, 182, 183, 184, 185, -1, 187, 188, 189, + 190, 191, 192, 193, -1, 195, 196, 197, 198, -1, + 200, 201, 202, 203, 204, 205, 206, -1, 208, -1, + 210, 211, 212, 213, 214, 215, 216, 217, -1, 219, + -1, 221, -1, -1, 224, -1, 226, 227, 228, 229, + 230, 231, -1, -1, 234, -1, 236, -1, -1, 239, + 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, + 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, + 260, 261, 262, 263, 264, 265, 266, 267, 268, -1, + 270, 271, 272, 273, 274, -1, 276, 277, -1, 279, + -1, 281, 282, 283, 284, 285, 286, -1, 288, 289, + -1, -1, 292, 293, 294, -1, -1, 297, 298, 299, + -1, 301, -1, 303, 304, 305, 306, 307, 308, 309, + 310, 311, 312, 313, 314, 315, 316, 317, -1, 319, + 320, 321, -1, 323, 324, 325, 326, 327, 328, -1, + 330, 331, 332, 333, 334, 335, -1, 337, 338, 339, + 340, 341, 342, 343, 344, 345, 346, -1, 348, 349, + 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, + 360, -1, 362, 363, -1, 365, 366, 367, 368, 369, + 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, + 380, 381, 382, -1, 384, 385, 386, 387, 388, 389, + 390, 391, 392, -1, -1, 395, 396, 397, 398, -1, + 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, + 410, 411, 412, 413, 414, -1, -1, 417, 418, 419, + 420, -1, 422, 423, 424, 425, 426, -1, 428, 429, + 430, -1, -1, 433, 434, 435, 436, 437, -1, 439, + 440, 441, 442, 443, 444, 445, 446, -1, -1, 449, + 450, 451, 452, 453, 454, 455, 456, -1, 458, 459, + 460, 461, 462, 463, 464, 465, -1, 467, -1, 469, + 470, 471, 472, 473, 474, 475, -1, -1, 478, -1, + 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, + 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, + 500, 501, -1, 3, 504, 5, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 518, -1, + -1, -1, 22, 23, 24, 25, 26, 27, 28, 29, + -1, 31, 32, 33, -1, -1, -1, -1, -1, -1, + -1, -1, -1, 43, 44, -1, 46, 47, 48, -1, + 50, 51, 52, 53, 54, -1, 56, 57, -1, 59, + 60, 61, 62, 63, 64, -1, -1, 67, 68, 69, + 70, 71, 72, 73, -1, 75, 76, 77, 78, 79, + -1, -1, -1, 83, 84, 85, 86, 87, 88, -1, + 90, 91, 92, -1, 94, 95, 96, 97, 98, 99, + -1, -1, 102, 103, 104, 105, 106, 107, 108, 109, + 110, 111, 112, 113, 114, 115, 116, -1, 118, -1, + 120, 121, 122, 123, 124, 125, -1, -1, 128, 129, + 130, 131, -1, -1, 134, 135, 136, 137, 138, -1, + 140, 141, 142, -1, 144, 145, 146, -1, 148, 149, + 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, + -1, 161, -1, 163, 164, 165, 166, -1, 168, -1, + 170, -1, 172, -1, 174, 175, 176, -1, 178, -1, + 180, -1, 182, 183, 184, 185, -1, 187, 188, 189, + 190, 191, 192, 193, -1, 195, 196, 197, 198, -1, + 200, 201, 202, 203, 204, 205, 206, -1, 208, -1, + 210, 211, 212, 213, 214, 215, 216, 217, -1, 219, + -1, 221, -1, -1, 224, -1, 226, 227, 228, 229, + 230, 231, -1, -1, 234, -1, 236, -1, -1, 239, + 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, + 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, + 260, 261, 262, 263, 264, 265, 266, 267, 268, -1, + 270, 271, 272, 273, 274, -1, 276, 277, -1, 279, + -1, 281, 282, 283, 284, 285, 286, -1, 288, 289, + -1, -1, 292, 293, 294, -1, -1, 297, 298, 299, + -1, 301, -1, 303, 304, 305, 306, 307, 308, 309, + 310, 311, 312, 313, 314, 315, 316, 317, -1, 319, + 320, 321, -1, 323, 324, 325, 326, 327, 328, -1, + 330, 331, 332, 333, 334, 335, -1, 337, 338, 339, + 340, 341, 342, 343, 344, 345, 346, -1, 348, 349, + 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, + 360, -1, 362, 363, -1, 365, 366, 367, 368, 369, + 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, + 380, 381, 382, -1, 384, 385, 386, 387, 388, 389, + 390, 391, 392, -1, -1, 395, 396, 397, 398, -1, + 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, + 410, 411, 412, 413, 414, -1, -1, 417, 418, 419, + 420, -1, 422, 423, 424, 425, 426, -1, 428, 429, + 430, -1, -1, 433, 434, 435, 436, 437, -1, 439, + 440, 441, 442, 443, 444, 445, 446, -1, -1, 449, + 450, 451, 452, 453, 454, 455, 456, -1, 458, 459, + 460, 461, 462, 463, 464, 465, -1, 467, -1, 469, + 470, 471, 472, 473, 474, 475, -1, -1, 478, -1, + 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, + 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, + 500, 501, -1, 3, 504, 5, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 518, -1, + -1, -1, 22, 23, 24, 25, 26, 27, 28, 29, + -1, 31, 32, 33, -1, -1, -1, -1, -1, -1, + -1, -1, -1, 43, 44, -1, 46, 47, 48, -1, + 50, 51, 52, 53, 54, -1, 56, 57, -1, 59, + 60, 61, 62, 63, 64, -1, -1, 67, 68, 69, + 70, 71, 72, 73, -1, 75, 76, 77, 78, 79, + -1, -1, -1, 83, 84, 85, 86, 87, 88, -1, + 90, 91, 92, -1, 94, 95, 96, 97, 98, 99, + -1, -1, 102, 103, 104, 105, 106, 107, 108, 109, + 110, 111, 112, 113, 114, 115, 116, -1, 118, -1, 120, 121, 122, 123, 124, 125, -1, -1, 128, 129, 130, 131, -1, -1, 134, 135, 136, 137, 138, -1, 140, 141, 142, -1, 144, 145, 146, -1, 148, 149, @@ -15997,7 +15556,7 @@ static const yytype_int16 yycheck[] = 470, 471, 472, 473, 474, 475, -1, -1, 478, -1, -1, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, - 500, 501, 3, -1, -1, -1, -1, -1, -1, -1, + 500, 501, 3, -1, 5, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 518, -1, -1, 22, 23, 24, 25, 26, 27, 28, 29, -1, 31, 32, 33, -1, -1, -1, -1, -1, -1, -1, @@ -16047,277 +15606,208 @@ static const yytype_int16 yycheck[] = 471, 472, 473, 474, 475, -1, -1, 478, -1, -1, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, - 501, -1, 3, 4, 5, -1, -1, 8, 9, -1, - -1, -1, -1, -1, 15, 16, -1, 518, 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, -1, 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, -1, 80, - 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, - 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, - 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, - 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, - 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, - 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, - 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, - 151, -1, 153, 154, 155, 156, 157, 158, -1, 160, - 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, - 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, - 181, -1, -1, 184, 185, 186, 187, 188, 189, 190, - 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, - 201, 202, 203, 204, 205, 206, 207, 208, 209, -1, - 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, - 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, - 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, - 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, - 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, - 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, - 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, - -1, 282, 283, 284, 285, 286, 287, 288, 289, 290, - 291, 292, 293, 294, 295, 296, 297, 298, -1, 300, - 301, 302, -1, 304, 305, 306, 307, 308, 309, 310, - 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, - -1, 322, 323, 324, -1, 326, 327, 328, 329, 330, - 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, - 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, - 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, - 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, - 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, - 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, - 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, - 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, - 411, 412, 413, -1, 415, 416, 417, 418, 419, 420, - 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, - 431, 432, 433, 434, -1, 436, -1, 438, 439, 440, - 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, - 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, - 461, 462, -1, 464, 465, 466, 467, 468, 469, 470, - 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, - 481, 482, 483, 484, 485, 486, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 498, 499, 500, - 501, -1, 3, -1, 505, 506, 507, 8, 509, 510, - 511, 512, 513, 514, 15, 16, -1, -1, 19, 20, - 21, 22, 23, 24, 25, 26, 27, 28, 29, -1, - 31, 32, 33, -1, -1, -1, -1, -1, -1, -1, - -1, -1, 43, 44, -1, 46, 47, 48, -1, 50, - 51, 52, 53, 54, -1, 56, 57, -1, 59, 60, - 61, 62, 63, 64, -1, -1, 67, 68, 69, 70, - 71, 72, 73, -1, 75, 76, 77, 78, 79, -1, - -1, -1, 83, 84, 85, 86, 87, 88, -1, 90, - 91, 92, -1, 94, 95, 96, 97, 98, 99, -1, - -1, 102, 103, 104, 105, 106, 107, 108, 109, 110, - 111, 112, 113, 114, 115, 116, -1, 118, -1, 120, - 121, 122, 123, 124, 125, -1, -1, 128, 129, 130, - 131, -1, -1, 134, 135, 136, 137, 138, -1, 140, - 141, 142, -1, 144, 145, 146, -1, 148, 149, 150, - 151, 152, 153, 154, 155, 156, 157, 158, 159, -1, - 161, -1, 163, 164, 165, 166, -1, 168, -1, 170, - -1, -1, -1, 174, 175, 176, -1, 178, -1, 180, - -1, 182, 183, 184, 185, -1, 187, 188, 189, 190, - 191, 192, 193, -1, 195, 196, 197, 198, -1, 200, - 201, 202, 203, 204, 205, 206, -1, 208, -1, 210, - 211, 212, 213, 214, 215, 216, 217, -1, 219, -1, - 221, -1, -1, 224, -1, 226, 227, 228, 229, 230, - 231, -1, -1, 234, -1, 236, -1, -1, 239, 240, - 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, - 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, - 261, 262, 263, 264, 265, 266, 267, 268, -1, 270, - 271, 272, 273, 274, -1, 276, 277, -1, 279, -1, - 281, 282, 283, 284, 285, 286, -1, 288, 289, -1, - -1, 292, 293, 294, -1, -1, 297, 298, 299, -1, - 301, -1, 303, 304, 305, 306, 307, 308, 309, 310, - 311, 312, 313, 314, -1, -1, -1, -1, 319, 320, - 321, -1, 323, 324, 325, 326, 327, 328, -1, 330, - 331, 332, 333, 334, 335, -1, 337, 338, 339, 340, - 341, 342, 343, 344, 345, 346, -1, 348, 349, 350, - 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, - -1, 362, 363, -1, 365, 366, 367, 368, 369, 370, - 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, - 381, -1, -1, 384, 385, 386, 387, 388, 389, 390, - 391, 392, -1, -1, 395, 396, 397, 398, -1, 400, - 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, - 411, 412, 413, 414, -1, -1, 417, 418, -1, 420, - -1, 422, 423, 424, 425, 426, -1, 428, 429, 430, - -1, -1, 433, 434, 435, 436, 437, -1, 439, 440, - 441, 442, 443, 444, 445, 446, -1, -1, 449, 450, - 451, -1, 453, 454, 455, 456, -1, 458, 459, 460, - 461, 462, 463, 464, 465, -1, 467, -1, 469, 470, - 471, 472, 473, 474, 475, -1, -1, 478, -1, -1, - 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, - 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, - 501, -1, -1, -1, 505, 506, 507, -1, 509, 510, - 511, 512, 513, 514, 8, -1, -1, 11, -1, -1, - -1, 15, 16, 17, 18, 19, 20, 21, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, 36, -1, -1, -1, -1, -1, -1, -1, - -1, -1, 46, 8, -1, -1, 11, -1, -1, 53, - 15, 16, 17, 18, 19, 20, 21, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 36, -1, -1, -1, -1, 80, -1, -1, -1, - -1, 46, 8, -1, -1, 11, -1, -1, 53, 15, - 16, 17, 18, 19, 20, 21, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 36, -1, -1, -1, -1, 80, -1, -1, -1, -1, - 46, -1, -1, -1, -1, -1, -1, 53, -1, -1, - 8, -1, -1, 11, -1, -1, -1, 15, 16, 17, - 18, 19, 20, 21, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, 80, -1, -1, -1, 36, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 46, 8, - -1, -1, 11, 177, -1, 53, 15, 16, 17, 18, - 19, 20, 21, -1, -1, -1, -1, -1, -1, -1, - 194, -1, -1, -1, -1, 199, -1, 36, -1, -1, - -1, -1, 80, -1, -1, -1, -1, 46, -1, -1, - -1, -1, 177, -1, 53, -1, -1, -1, 222, 223, - -1, -1, -1, -1, -1, -1, -1, -1, -1, 194, - -1, -1, -1, 237, 199, -1, -1, -1, -1, -1, - -1, 80, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 177, -1, -1, -1, -1, -1, 222, 223, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 194, -1, - -1, 275, 237, 199, 278, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 292, -1, - -1, 295, -1, -1, -1, -1, 222, 223, -1, 177, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 275, 237, -1, 278, -1, -1, 194, -1, -1, -1, - -1, 199, -1, -1, -1, -1, -1, 292, -1, -1, - 295, -1, -1, -1, -1, -1, -1, -1, 177, -1, - -1, -1, -1, -1, 222, 223, -1, -1, -1, 275, - -1, -1, 278, -1, -1, 194, -1, -1, -1, 237, - 199, -1, -1, -1, -1, -1, 292, -1, -1, 295, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 222, 223, -1, -1, -1, -1, -1, - 394, -1, -1, -1, -1, -1, -1, 275, 237, -1, - 278, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, 292, -1, -1, 295, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, 394, - -1, -1, -1, -1, -1, -1, 275, -1, -1, 278, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 292, -1, -1, 295, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 394, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 502, -1, - -1, 505, 506, 507, -1, 509, 510, 511, 512, 513, - 514, -1, -1, -1, -1, 519, 394, -1, -1, -1, - -1, -1, 8, -1, -1, 11, -1, -1, -1, 15, - 16, 17, 18, 19, 20, 21, -1, 502, -1, -1, - 505, 506, 507, -1, 509, 510, 511, 512, 513, 514, - 36, -1, -1, -1, 519, 394, -1, -1, 8, -1, - 46, 11, -1, -1, -1, 15, 16, 53, -1, 19, - 20, 21, -1, -1, -1, -1, 502, -1, -1, 505, - 506, 507, -1, 509, 510, 511, 512, 513, 514, -1, - -1, -1, -1, 519, 80, -1, 46, -1, -1, -1, - -1, -1, -1, 53, -1, -1, -1, -1, -1, 8, - -1, -1, 11, -1, -1, -1, 15, 16, 17, 18, - 19, 20, 21, -1, 502, -1, -1, 505, 506, 507, - 80, 509, 510, 511, 512, 513, 514, 36, -1, -1, - -1, 519, -1, -1, -1, -1, -1, 46, 8, -1, - -1, 11, -1, -1, 53, 15, 16, 17, 18, 19, - 20, 21, -1, 502, -1, -1, 505, 506, 507, -1, - 509, 510, 511, 512, 513, 514, 36, -1, -1, -1, - 519, 80, -1, -1, -1, -1, 46, 8, -1, -1, - 11, 177, -1, 53, 15, 16, 17, 18, 19, 20, - 21, -1, -1, -1, -1, -1, -1, -1, 194, -1, - -1, -1, -1, 199, -1, 36, -1, -1, -1, -1, - 80, -1, -1, -1, -1, 46, -1, 177, -1, -1, - -1, -1, 53, -1, -1, -1, 222, 223, -1, -1, - -1, -1, -1, -1, 194, -1, -1, -1, -1, 199, - -1, 237, -1, -1, -1, -1, -1, -1, -1, 80, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, 222, 223, -1, -1, -1, -1, 177, -1, - -1, -1, -1, -1, -1, -1, -1, 237, -1, 275, - -1, -1, 278, -1, -1, 194, -1, -1, -1, -1, - 199, -1, -1, -1, -1, -1, 292, -1, -1, 295, - -1, -1, -1, -1, -1, -1, -1, 177, -1, -1, - -1, -1, -1, 222, 223, 275, -1, -1, 278, -1, - -1, -1, -1, -1, 194, -1, -1, -1, 237, 199, - -1, -1, 292, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 177, -1, -1, -1, - -1, -1, 222, 223, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 194, -1, -1, 275, 237, 199, 278, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 292, -1, -1, 295, -1, -1, -1, - -1, 222, 223, -1, -1, -1, -1, -1, 394, -1, - -1, -1, -1, -1, -1, 275, 237, -1, 278, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, 292, -1, -1, 295, -1, -1, -1, -1, - -1, -1, -1, -1, 394, -1, -1, -1, -1, -1, - -1, -1, -1, -1, 275, -1, -1, 278, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 292, -1, -1, 295, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 394, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 502, -1, -1, 505, - 506, 507, -1, 509, 510, 511, 512, 513, 514, -1, - -1, 517, -1, -1, 394, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, 502, -1, -1, 505, 506, 507, -1, 509, - 510, 511, 512, 513, 514, -1, -1, -1, -1, -1, - -1, -1, -1, 394, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 502, -1, -1, 505, 506, 507, -1, - 509, 510, 511, 512, 513, 514, -1, -1, 517, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, 502, -1, -1, 505, 506, 507, -1, 509, - 510, 511, 512, 513, 514, -1, -1, 517, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 3, -1, - -1, 502, -1, -1, 505, 506, 507, -1, 509, 510, - 511, 512, 513, 514, -1, -1, 517, 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, + 501, 3, -1, 5, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, 518, -1, -1, + 22, 23, 24, 25, 26, 27, 28, 29, -1, 31, + 32, 33, -1, -1, -1, -1, -1, -1, -1, -1, + -1, 43, 44, -1, 46, 47, 48, -1, 50, 51, + 52, 53, 54, -1, 56, 57, -1, 59, 60, 61, + 62, 63, 64, -1, -1, 67, 68, 69, 70, 71, + 72, 73, -1, 75, 76, 77, 78, 79, -1, -1, + -1, 83, 84, 85, 86, 87, 88, -1, 90, 91, + 92, -1, 94, 95, 96, 97, 98, 99, -1, -1, + 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, + 112, 113, 114, 115, 116, -1, 118, -1, 120, 121, + 122, 123, 124, 125, -1, -1, 128, 129, 130, 131, + -1, -1, 134, 135, 136, 137, 138, -1, 140, 141, + 142, -1, 144, 145, 146, -1, 148, 149, 150, 151, + 152, 153, 154, 155, 156, 157, 158, 159, -1, 161, + -1, 163, 164, 165, 166, -1, 168, -1, 170, -1, + -1, -1, 174, 175, 176, -1, 178, -1, 180, -1, + 182, 183, 184, 185, -1, 187, 188, 189, 190, 191, + 192, 193, -1, 195, 196, 197, 198, -1, 200, 201, + 202, 203, 204, 205, 206, -1, 208, -1, 210, 211, + 212, 213, 214, 215, 216, 217, -1, 219, -1, 221, + -1, -1, 224, -1, 226, 227, 228, 229, 230, 231, + -1, -1, 234, -1, 236, -1, -1, 239, 240, 241, + 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, + 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, + 262, 263, 264, 265, 266, 267, 268, -1, 270, 271, + 272, 273, 274, -1, 276, 277, -1, 279, -1, 281, + 282, 283, 284, 285, 286, -1, 288, 289, -1, -1, + 292, 293, 294, -1, -1, 297, 298, 299, -1, 301, + -1, 303, 304, 305, 306, 307, 308, 309, 310, 311, + 312, 313, 314, -1, -1, -1, -1, 319, 320, 321, + -1, 323, 324, 325, 326, 327, 328, -1, 330, 331, + 332, 333, 334, 335, -1, 337, 338, 339, 340, 341, + 342, 343, 344, 345, 346, -1, 348, 349, 350, 351, + 352, 353, 354, 355, 356, 357, 358, 359, 360, -1, + 362, 363, -1, 365, 366, 367, 368, 369, 370, 371, + 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, + -1, -1, 384, 385, 386, 387, 388, 389, 390, 391, + 392, -1, -1, 395, 396, 397, 398, -1, 400, 401, + 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, + 412, 413, 414, -1, -1, 417, 418, -1, 420, -1, + 422, 423, 424, 425, 426, -1, 428, 429, 430, -1, + -1, 433, 434, 435, 436, 437, -1, 439, 440, 441, + 442, 443, 444, 445, 446, -1, -1, 449, 450, 451, + -1, 453, 454, 455, 456, -1, 458, 459, 460, 461, + 462, 463, 464, 465, -1, 467, -1, 469, 470, 471, + 472, 473, 474, 475, -1, -1, 478, -1, -1, 481, + 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, + 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, + 3, -1, 5, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 518, -1, -1, 22, + 23, 24, 25, 26, 27, 28, 29, -1, 31, 32, + 33, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 43, 44, -1, 46, 47, 48, -1, 50, 51, 52, + 53, 54, -1, 56, 57, -1, 59, 60, 61, 62, + 63, 64, -1, -1, 67, 68, 69, 70, 71, 72, + 73, -1, 75, 76, 77, 78, 79, -1, -1, -1, + 83, 84, 85, 86, 87, 88, -1, 90, 91, 92, + -1, 94, 95, 96, 97, 98, 99, -1, -1, 102, + 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, + 113, 114, 115, 116, -1, 118, -1, 120, 121, 122, + 123, 124, 125, -1, -1, 128, 129, 130, 131, -1, + -1, 134, 135, 136, 137, 138, -1, 140, 141, 142, + -1, 144, 145, 146, -1, 148, 149, 150, 151, 152, + 153, 154, 155, 156, 157, 158, 159, -1, 161, -1, + 163, 164, 165, 166, -1, 168, -1, 170, -1, -1, + -1, 174, 175, 176, -1, 178, -1, 180, -1, 182, + 183, 184, 185, -1, 187, 188, 189, 190, 191, 192, + 193, -1, 195, 196, 197, 198, -1, 200, 201, 202, + 203, 204, 205, 206, -1, 208, -1, 210, 211, 212, + 213, 214, 215, 216, 217, -1, 219, -1, 221, -1, + -1, 224, -1, 226, 227, 228, 229, 230, 231, -1, + -1, 234, -1, 236, -1, -1, 239, 240, 241, 242, + 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, + 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, + 263, 264, 265, 266, 267, 268, -1, 270, 271, 272, + 273, 274, -1, 276, 277, -1, 279, -1, 281, 282, + 283, 284, 285, 286, -1, 288, 289, -1, -1, 292, + 293, 294, -1, -1, 297, 298, 299, -1, 301, -1, + 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, + 313, 314, -1, -1, -1, -1, 319, 320, 321, -1, + 323, 324, 325, 326, 327, 328, -1, 330, 331, 332, + 333, 334, 335, -1, 337, 338, 339, 340, 341, 342, + 343, 344, 345, 346, -1, 348, 349, 350, 351, 352, + 353, 354, 355, 356, 357, 358, 359, 360, -1, 362, + 363, -1, 365, 366, 367, 368, 369, 370, 371, 372, + 373, 374, 375, 376, 377, 378, 379, 380, 381, -1, + -1, 384, 385, 386, 387, 388, 389, 390, 391, 392, + -1, -1, 395, 396, 397, 398, -1, 400, 401, 402, + 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, + 413, 414, -1, -1, 417, 418, -1, 420, -1, 422, + 423, 424, 425, 426, -1, 428, 429, 430, -1, -1, + 433, 434, 435, 436, 437, -1, 439, 440, 441, 442, + 443, 444, 445, 446, -1, -1, 449, 450, 451, -1, + 453, 454, 455, 456, -1, 458, 459, 460, 461, 462, + 463, 464, 465, -1, 467, -1, 469, 470, 471, 472, + 473, 474, 475, -1, -1, 478, -1, -1, 481, 482, + 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, + 493, 494, 495, 496, 497, 498, 499, 500, 501, 3, + -1, 5, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 518, -1, -1, 22, 23, + 24, 25, 26, 27, 28, 29, -1, 31, 32, 33, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 43, + 44, -1, 46, 47, 48, -1, 50, 51, 52, 53, + 54, -1, 56, 57, -1, 59, 60, 61, 62, 63, + 64, -1, -1, 67, 68, 69, 70, 71, 72, 73, + -1, 75, 76, 77, 78, 79, -1, -1, -1, 83, + 84, 85, 86, 87, 88, -1, 90, 91, 92, -1, + 94, 95, 96, 97, 98, 99, -1, -1, 102, 103, + 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, + 114, 115, 116, -1, 118, -1, 120, 121, 122, 123, + 124, 125, -1, -1, 128, 129, 130, 131, -1, -1, + 134, 135, 136, 137, 138, -1, 140, 141, 142, -1, + 144, 145, 146, -1, 148, 149, 150, 151, 152, 153, + 154, 155, 156, 157, 158, 159, -1, 161, -1, 163, + 164, 165, 166, -1, 168, -1, 170, -1, -1, -1, + 174, 175, 176, -1, 178, -1, 180, -1, 182, 183, + 184, 185, -1, 187, 188, 189, 190, 191, 192, 193, + -1, 195, 196, 197, 198, -1, 200, 201, 202, 203, + 204, 205, 206, -1, 208, -1, 210, 211, 212, 213, + 214, 215, 216, 217, -1, 219, -1, 221, -1, -1, + 224, -1, 226, 227, 228, 229, 230, 231, -1, -1, + 234, -1, 236, -1, -1, 239, 240, 241, 242, 243, + 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, + 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, + 264, 265, 266, 267, 268, -1, 270, 271, 272, 273, + 274, -1, 276, 277, -1, 279, -1, 281, 282, 283, + 284, 285, 286, -1, 288, 289, -1, -1, 292, 293, + 294, -1, -1, 297, 298, 299, -1, 301, -1, 303, + 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, + 314, -1, -1, -1, -1, 319, 320, 321, -1, 323, + 324, 325, 326, 327, 328, -1, 330, 331, 332, 333, + 334, 335, -1, 337, 338, 339, 340, 341, 342, 343, + 344, 345, 346, -1, 348, 349, 350, 351, 352, 353, + 354, 355, 356, 357, 358, 359, 360, -1, 362, 363, + -1, 365, 366, 367, 368, 369, 370, 371, 372, 373, + 374, 375, 376, 377, 378, 379, 380, 381, -1, -1, + 384, 385, 386, 387, 388, 389, 390, 391, 392, -1, + -1, 395, 396, 397, 398, -1, 400, 401, 402, 403, + 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, + 414, -1, -1, 417, 418, -1, 420, -1, 422, 423, + 424, 425, 426, -1, 428, 429, 430, -1, -1, 433, + 434, 435, 436, 437, -1, 439, 440, 441, 442, 443, + 444, 445, 446, -1, -1, 449, 450, 451, -1, 453, + 454, 455, 456, -1, 458, 459, 460, 461, 462, 463, + 464, 465, -1, 467, -1, 469, 470, 471, 472, 473, + 474, 475, -1, -1, 478, -1, -1, 481, 482, 483, + 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, + 494, 495, 496, 497, 498, 499, 500, 501, 3, -1, + 5, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 518, -1, -1, 22, 23, 24, + 25, 26, 27, 28, 29, -1, 31, 32, 33, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 43, 44, + -1, 46, 47, 48, -1, 50, 51, 52, 53, 54, + -1, 56, 57, -1, 59, 60, 61, 62, 63, 64, + -1, -1, 67, 68, 69, 70, 71, 72, 73, -1, + 75, 76, 77, 78, 79, -1, -1, -1, 83, 84, + 85, 86, 87, 88, -1, 90, 91, 92, -1, 94, + 95, 96, 97, 98, 99, -1, -1, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, - 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, - 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, - 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, - 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, - 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, - 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, - 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, - 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, - 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, - 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, - 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, - 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, - 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, + 115, 116, -1, 118, -1, 120, 121, 122, 123, 124, + 125, -1, -1, 128, 129, 130, 131, -1, -1, 134, + 135, 136, 137, 138, -1, 140, 141, 142, -1, 144, + 145, 146, -1, 148, 149, 150, 151, 152, 153, 154, + 155, 156, 157, 158, 159, -1, 161, -1, 163, 164, + 165, 166, -1, 168, -1, 170, -1, -1, -1, 174, + 175, 176, -1, 178, -1, 180, -1, 182, 183, 184, + 185, -1, 187, 188, 189, 190, 191, 192, 193, -1, + 195, 196, 197, 198, -1, 200, 201, 202, 203, 204, + 205, 206, -1, 208, -1, 210, 211, 212, 213, 214, + 215, 216, 217, -1, 219, -1, 221, -1, -1, 224, + -1, 226, 227, 228, 229, 230, 231, -1, -1, 234, + -1, 236, -1, -1, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, - 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, - 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, - 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, - 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, + 265, 266, 267, 268, -1, 270, 271, 272, 273, 274, + -1, 276, 277, -1, 279, -1, 281, 282, 283, 284, + 285, 286, -1, 288, 289, -1, -1, 292, 293, 294, + -1, -1, 297, 298, 299, -1, 301, -1, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, - 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, - 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, - 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, - 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, - 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, + -1, -1, -1, -1, 319, 320, 321, -1, 323, 324, + 325, 326, 327, 328, -1, 330, 331, 332, 333, 334, + 335, -1, 337, 338, 339, 340, 341, 342, 343, 344, + 345, 346, -1, 348, 349, 350, 351, 352, 353, 354, + 355, 356, 357, 358, 359, 360, -1, 362, 363, -1, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, - 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, - 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, - 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, + 375, 376, 377, 378, 379, 380, 381, -1, -1, 384, + 385, 386, 387, 388, 389, 390, 391, 392, -1, -1, + 395, 396, 397, 398, -1, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, - 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, - 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, - 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, - 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, - 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, - 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, - 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, + -1, -1, 417, 418, -1, 420, -1, 422, 423, 424, + 425, 426, -1, 428, 429, 430, -1, -1, 433, 434, + 435, 436, 437, -1, 439, 440, 441, 442, 443, 444, + 445, 446, -1, -1, 449, 450, 451, -1, 453, 454, + 455, 456, -1, 458, 459, 460, 461, 462, 463, 464, + 465, -1, 467, -1, 469, 470, 471, 472, 473, 474, + 475, -1, -1, 478, -1, -1, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, - 495, 496, 497, 498, 499, 500, 501, 3, -1, -1, - -1, -1, -1, -1, -1, -1, 511, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 22, 23, 24, 25, + 495, 496, 497, 498, 499, 500, 501, 3, -1, 5, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, 518, -1, -1, 22, 23, 24, 25, 26, 27, 28, 29, -1, 31, 32, 33, -1, -1, -1, -1, -1, -1, -1, -1, -1, 43, 44, -1, 46, 47, 48, -1, 50, 51, 52, 53, 54, -1, @@ -16365,9 +15855,9 @@ static const yytype_int16 yycheck[] = -1, 467, -1, 469, 470, 471, 472, 473, 474, 475, -1, -1, 478, -1, -1, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, - 496, 497, 498, 499, 500, 501, 3, -1, -1, -1, - -1, -1, -1, -1, -1, 511, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 22, 23, 24, 25, 26, + 496, 497, 498, 499, 500, 501, 3, -1, 5, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, 518, -1, -1, 22, 23, 24, 25, 26, 27, 28, 29, -1, 31, 32, 33, -1, -1, -1, -1, -1, -1, -1, -1, -1, 43, 44, -1, 46, 47, 48, -1, 50, 51, 52, 53, 54, -1, 56, @@ -16415,249 +15905,911 @@ static const yytype_int16 yycheck[] = 467, -1, 469, 470, 471, 472, 473, 474, 475, -1, -1, 478, -1, -1, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, - 497, 498, 499, 500, 501, 3, 4, 5, -1, -1, - -1, 9, -1, -1, 511, -1, -1, -1, -1, -1, - -1, -1, -1, -1, 22, 23, 24, 25, 26, 27, - 28, 29, -1, 31, 32, 33, -1, -1, -1, 37, - -1, -1, -1, -1, 42, 43, 44, -1, 46, 47, - 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, + 497, 498, 499, 500, 501, 3, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, 518, -1, -1, 22, 23, 24, 25, 26, 27, + 28, 29, -1, 31, 32, 33, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 43, 44, -1, 46, 47, + 48, -1, 50, 51, 52, 53, 54, -1, 56, 57, -1, 59, 60, 61, 62, 63, 64, -1, -1, 67, 68, 69, 70, 71, 72, 73, -1, 75, 76, 77, - 78, 79, -1, 81, -1, 83, 84, 85, 86, 87, - 88, 89, 90, 91, 92, -1, 94, 95, 96, 97, - 98, 99, -1, 101, 102, 103, 104, 105, 106, 107, + 78, 79, -1, -1, -1, 83, 84, 85, 86, 87, + 88, -1, 90, 91, 92, -1, 94, 95, 96, 97, + 98, 99, -1, -1, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, -1, 118, -1, 120, 121, 122, 123, 124, 125, -1, -1, 128, 129, 130, 131, -1, -1, 134, 135, 136, 137, 138, -1, 140, 141, 142, -1, 144, 145, 146, -1, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, - 158, 159, 160, 161, -1, 163, 164, 165, 166, -1, - 168, -1, 170, 171, -1, 173, 174, 175, 176, 177, + 158, 159, -1, 161, -1, 163, 164, 165, 166, -1, + 168, -1, 170, -1, -1, -1, 174, 175, 176, -1, 178, -1, 180, -1, 182, 183, 184, 185, -1, 187, - 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, + 188, 189, 190, 191, 192, 193, -1, 195, 196, 197, 198, -1, 200, 201, 202, 203, 204, 205, 206, -1, - 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, - -1, 219, -1, 221, 222, 223, 224, 225, 226, 227, - 228, 229, 230, 231, -1, -1, 234, 235, 236, 237, + 208, -1, 210, 211, 212, 213, 214, 215, 216, 217, + -1, 219, -1, 221, -1, -1, 224, -1, 226, 227, + 228, 229, 230, 231, -1, -1, 234, -1, 236, -1, -1, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, - 268, 269, 270, 271, 272, 273, 274, -1, 276, 277, - 278, 279, -1, 281, 282, 283, 284, 285, 286, -1, - 288, 289, 290, -1, 292, 293, 294, -1, -1, 297, - 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, + 268, -1, 270, 271, 272, 273, 274, -1, 276, 277, + -1, 279, -1, 281, 282, 283, 284, 285, 286, -1, + 288, 289, -1, -1, 292, 293, 294, -1, -1, 297, + 298, 299, -1, 301, -1, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, -1, -1, -1, - -1, 319, 320, 321, 322, 323, 324, 325, 326, 327, + -1, 319, 320, 321, -1, 323, 324, 325, 326, 327, 328, -1, 330, 331, 332, 333, 334, 335, -1, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, -1, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, - 358, 359, 360, -1, 362, 363, 364, 365, 366, 367, + 358, 359, 360, -1, 362, 363, -1, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, - 378, 379, 380, 381, -1, 383, 384, 385, 386, 387, - 388, 389, 390, 391, 392, -1, 394, 395, 396, 397, + 378, 379, 380, 381, -1, -1, 384, 385, 386, 387, + 388, 389, 390, 391, 392, -1, -1, 395, 396, 397, 398, -1, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, -1, -1, 417, - 418, -1, 420, 421, 422, 423, 424, 425, 426, -1, + 418, -1, 420, -1, 422, 423, 424, 425, 426, -1, 428, 429, 430, -1, -1, 433, 434, 435, 436, 437, - 438, 439, 440, 441, 442, 443, 444, 445, 446, -1, + -1, 439, 440, 441, 442, 443, 444, 445, 446, -1, -1, 449, 450, 451, -1, 453, 454, 455, 456, -1, 458, 459, 460, 461, 462, 463, 464, 465, -1, 467, - 468, 469, 470, 471, 472, 473, 474, 475, -1, -1, + -1, 469, 470, 471, 472, 473, 474, 475, -1, -1, 478, -1, -1, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, - 498, 499, 500, 501, -1, -1, 8, -1, -1, 11, - -1, 509, 510, 15, 16, 17, 18, 19, 20, 21, + 498, 499, 500, 501, 3, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 518, -1, -1, 22, 23, 24, 25, 26, 27, 28, + 29, -1, 31, 32, 33, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 43, 44, -1, 46, 47, 48, + -1, 50, 51, 52, 53, 54, -1, 56, 57, -1, + 59, 60, 61, 62, 63, 64, -1, -1, 67, 68, + 69, 70, 71, 72, 73, -1, 75, 76, 77, 78, + 79, -1, -1, -1, 83, 84, 85, 86, 87, 88, + -1, 90, 91, 92, -1, 94, 95, 96, 97, 98, + 99, -1, -1, 102, 103, 104, 105, 106, 107, 108, + 109, 110, 111, 112, 113, 114, 115, 116, -1, 118, + -1, 120, 121, 122, 123, 124, 125, -1, -1, 128, + 129, 130, 131, -1, -1, 134, 135, 136, 137, 138, + -1, 140, 141, 142, -1, 144, 145, 146, -1, 148, + 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, + 159, -1, 161, -1, 163, 164, 165, 166, -1, 168, + -1, 170, -1, -1, -1, 174, 175, 176, -1, 178, + -1, 180, -1, 182, 183, 184, 185, -1, 187, 188, + 189, 190, 191, 192, 193, -1, 195, 196, 197, 198, + -1, 200, 201, 202, 203, 204, 205, 206, -1, 208, + -1, 210, 211, 212, 213, 214, 215, 216, 217, -1, + 219, -1, 221, -1, -1, 224, -1, 226, 227, 228, + 229, 230, 231, -1, -1, 234, -1, 236, -1, -1, + 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, + 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, + 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, + -1, 270, 271, 272, 273, 274, -1, 276, 277, -1, + 279, -1, 281, 282, 283, 284, 285, 286, -1, 288, + 289, -1, -1, 292, 293, 294, -1, -1, 297, 298, + 299, -1, 301, -1, 303, 304, 305, 306, 307, 308, + 309, 310, 311, 312, 313, 314, -1, -1, -1, -1, + 319, 320, 321, -1, 323, 324, 325, 326, 327, 328, + -1, 330, 331, 332, 333, 334, 335, -1, 337, 338, + 339, 340, 341, 342, 343, 344, 345, 346, -1, 348, + 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, + 359, 360, -1, 362, 363, -1, 365, 366, 367, 368, + 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, + 379, 380, 381, -1, -1, 384, 385, 386, 387, 388, + 389, 390, 391, 392, -1, -1, 395, 396, 397, 398, + -1, 400, 401, 402, 403, 404, 405, 406, 407, 408, + 409, 410, 411, 412, 413, 414, -1, -1, 417, 418, + -1, 420, -1, 422, 423, 424, 425, 426, -1, 428, + 429, 430, -1, -1, 433, 434, 435, 436, 437, -1, + 439, 440, 441, 442, 443, 444, 445, 446, -1, -1, + 449, 450, 451, -1, 453, 454, 455, 456, -1, 458, + 459, 460, 461, 462, 463, 464, 465, -1, 467, -1, + 469, 470, 471, 472, 473, 474, 475, -1, -1, 478, + -1, -1, 481, 482, 483, 484, 485, 486, 487, 488, + 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, + 499, 500, 501, -1, 3, 4, 5, -1, -1, 8, + 9, -1, -1, -1, -1, -1, 15, 16, -1, 518, + 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, -1, 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, + -1, 80, 81, 82, 83, 84, 85, 86, 87, 88, + 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, + 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, + 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, + 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, + 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, + 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, + 149, 150, 151, -1, 153, 154, 155, 156, 157, 158, + -1, 160, 161, 162, 163, 164, 165, 166, 167, 168, + 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, + 179, 180, 181, -1, -1, 184, 185, 186, 187, 188, + 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, + 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, + 209, -1, 211, 212, 213, 214, 215, 216, 217, 218, + 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, + 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, + 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, + 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, + 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, + 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, + 279, 280, -1, 282, 283, 284, 285, 286, 287, 288, + 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, + -1, 300, 301, 302, -1, 304, 305, 306, 307, 308, + 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, + 319, 320, -1, 322, 323, 324, -1, 326, 327, 328, + 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, + 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, + 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, + 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, + 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, + 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, + 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, + 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, + 409, 410, 411, 412, 413, -1, 415, 416, 417, 418, + 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, + 429, 430, 431, 432, 433, 434, -1, 436, -1, 438, + 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, + 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, + 459, 460, 461, 462, -1, 464, 465, 466, 467, 468, + 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, + 479, 480, 481, 482, 483, 484, 485, 486, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 498, + 499, 500, 501, -1, 3, -1, 505, 506, 507, 8, + 509, 510, 511, 512, 513, 514, 15, 16, -1, -1, + 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, + 29, -1, 31, 32, 33, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 43, 44, -1, 46, 47, 48, + -1, 50, 51, 52, 53, 54, -1, 56, 57, -1, + 59, 60, 61, 62, 63, 64, -1, -1, 67, 68, + 69, 70, 71, 72, 73, -1, 75, 76, 77, 78, + 79, -1, -1, -1, 83, 84, 85, 86, 87, 88, + -1, 90, 91, 92, -1, 94, 95, 96, 97, 98, + 99, -1, -1, 102, 103, 104, 105, 106, 107, 108, + 109, 110, 111, 112, 113, 114, 115, 116, -1, 118, + -1, 120, 121, 122, 123, 124, 125, -1, -1, 128, + 129, 130, 131, -1, -1, 134, 135, 136, 137, 138, + -1, 140, 141, 142, -1, 144, 145, 146, -1, 148, + 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, + 159, -1, 161, -1, 163, 164, 165, 166, -1, 168, + -1, 170, -1, -1, -1, 174, 175, 176, -1, 178, + -1, 180, -1, 182, 183, 184, 185, -1, 187, 188, + 189, 190, 191, 192, 193, -1, 195, 196, 197, 198, + -1, 200, 201, 202, 203, 204, 205, 206, -1, 208, + -1, 210, 211, 212, 213, 214, 215, 216, 217, -1, + 219, -1, 221, -1, -1, 224, -1, 226, 227, 228, + 229, 230, 231, -1, -1, 234, -1, 236, -1, -1, + 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, + 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, + 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, + -1, 270, 271, 272, 273, 274, -1, 276, 277, -1, + 279, -1, 281, 282, 283, 284, 285, 286, -1, 288, + 289, -1, -1, 292, 293, 294, -1, -1, 297, 298, + 299, -1, 301, -1, 303, 304, 305, 306, 307, 308, + 309, 310, 311, 312, 313, 314, -1, -1, -1, -1, + 319, 320, 321, -1, 323, 324, 325, 326, 327, 328, + -1, 330, 331, 332, 333, 334, 335, -1, 337, 338, + 339, 340, 341, 342, 343, 344, 345, 346, -1, 348, + 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, + 359, 360, -1, 362, 363, -1, 365, 366, 367, 368, + 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, + 379, 380, 381, -1, -1, 384, 385, 386, 387, 388, + 389, 390, 391, 392, -1, -1, 395, 396, 397, 398, + -1, 400, 401, 402, 403, 404, 405, 406, 407, 408, + 409, 410, 411, 412, 413, 414, -1, -1, 417, 418, + -1, 420, -1, 422, 423, 424, 425, 426, -1, 428, + 429, 430, -1, -1, 433, 434, 435, 436, 437, -1, + 439, 440, 441, 442, 443, 444, 445, 446, -1, -1, + 449, 450, 451, -1, 453, 454, 455, 456, -1, 458, + 459, 460, 461, 462, 463, 464, 465, -1, 467, -1, + 469, 470, 471, 472, 473, 474, 475, -1, -1, 478, + -1, -1, 481, 482, 483, 484, 485, 486, 487, 488, + 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, + 499, 500, 501, -1, -1, -1, 505, 506, 507, -1, + 509, 510, 511, 512, 513, 514, 8, -1, -1, 11, + -1, -1, -1, 15, 16, 17, 18, 19, 20, 21, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, 36, -1, -1, -1, -1, 41, + -1, -1, -1, -1, 36, -1, -1, -1, -1, -1, -1, -1, -1, -1, 46, 8, -1, -1, 11, -1, -1, 53, 15, 16, 17, 18, 19, 20, 21, -1, - -1, -1, -1, 8, -1, -1, 11, -1, -1, -1, - 15, 16, -1, 36, 19, 20, 21, -1, 80, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, 36, -1, -1, -1, -1, 80, -1, -1, -1, -1, 46, 8, -1, -1, 11, -1, -1, 53, 15, 16, 17, 18, 19, 20, 21, -1, -1, - -1, 46, -1, -1, -1, -1, -1, -1, 53, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 36, -1, -1, -1, -1, 80, -1, -1, - -1, -1, 46, -1, 126, -1, -1, -1, -1, 53, - -1, 8, -1, -1, 11, 80, -1, -1, 15, 16, + -1, -1, 46, -1, -1, -1, -1, -1, -1, 53, + -1, -1, 8, -1, -1, 11, -1, -1, -1, 15, + 16, 17, 18, 19, 20, 21, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 80, -1, -1, -1, + 36, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 46, 8, -1, -1, 11, 177, -1, 53, 15, 16, 17, 18, 19, 20, 21, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 80, -1, -1, 36, - -1, -1, -1, 40, -1, -1, -1, -1, -1, 46, - -1, -1, -1, -1, -1, 177, 53, -1, -1, -1, + -1, -1, 194, -1, -1, -1, -1, 199, -1, 36, + -1, -1, -1, -1, 80, -1, -1, -1, -1, 46, + -1, -1, -1, -1, 177, -1, 53, -1, -1, -1, + 222, 223, -1, -1, -1, -1, -1, -1, -1, -1, + -1, 194, -1, -1, -1, 237, 199, -1, -1, -1, + -1, -1, -1, 80, -1, -1, -1, -1, -1, -1, + -1, -1, -1, 177, -1, -1, -1, -1, -1, 222, + 223, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 194, -1, -1, 275, 237, 199, 278, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 292, -1, -1, 295, -1, -1, -1, -1, 222, 223, + -1, 177, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, 275, 237, -1, 278, -1, -1, 194, -1, + -1, -1, -1, 199, -1, -1, -1, -1, -1, 292, + -1, -1, 295, -1, -1, -1, -1, -1, -1, -1, + 177, -1, -1, -1, -1, -1, 222, 223, -1, -1, + -1, 275, -1, -1, 278, -1, -1, 194, -1, -1, + -1, 237, 199, -1, -1, -1, -1, -1, 292, -1, + -1, 295, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 222, 223, -1, -1, -1, + -1, -1, 394, -1, -1, -1, -1, -1, -1, 275, + 237, -1, 278, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 292, -1, -1, 295, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, 394, -1, -1, -1, -1, -1, -1, 275, -1, + -1, 278, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 292, -1, -1, 295, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 394, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 502, -1, -1, 505, 506, 507, -1, 509, 510, 511, + 512, 513, 514, -1, -1, -1, -1, 519, 394, -1, + -1, -1, -1, -1, 8, -1, -1, 11, -1, -1, + -1, 15, 16, 17, 18, 19, 20, 21, -1, 502, + -1, -1, 505, 506, 507, -1, 509, 510, 511, 512, + 513, 514, 36, -1, -1, -1, 519, 394, -1, -1, + -1, -1, 46, -1, -1, -1, -1, -1, -1, 53, + -1, -1, -1, -1, -1, -1, -1, -1, 502, -1, + -1, 505, 506, 507, -1, 509, 510, 511, 512, 513, + 514, -1, -1, -1, -1, 519, 80, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, 8, -1, -1, 11, -1, -1, -1, 15, 16, + 17, 18, 19, 20, 21, -1, 502, -1, -1, 505, + 506, 507, -1, 509, 510, 511, 512, 513, 514, 36, + -1, -1, -1, 519, -1, -1, -1, -1, -1, 46, + 8, -1, -1, 11, -1, -1, 53, 15, 16, 17, + 18, 19, 20, 21, -1, 502, -1, -1, 505, 506, + 507, -1, 509, 510, 511, 512, 513, 514, 36, -1, + -1, -1, 519, 80, -1, -1, -1, -1, 46, 8, + -1, -1, 11, 177, -1, 53, 15, 16, 17, 18, + 19, 20, 21, -1, -1, -1, -1, -1, -1, -1, + 194, -1, -1, -1, -1, 199, -1, 36, -1, -1, + -1, -1, 80, -1, -1, -1, -1, 46, -1, -1, + -1, -1, -1, -1, 53, -1, -1, -1, 222, 223, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, 237, -1, -1, -1, -1, -1, -1, + -1, 80, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 8, -1, -1, 11, + 177, -1, -1, 15, 16, 17, 18, 19, 20, 21, + -1, 275, -1, -1, 278, -1, -1, 194, -1, -1, + -1, -1, 199, -1, 36, -1, -1, -1, 292, -1, + -1, 295, -1, -1, 46, -1, -1, -1, -1, 177, + -1, 53, -1, -1, -1, 222, 223, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 194, -1, -1, -1, + 237, 199, -1, -1, -1, -1, -1, -1, 80, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 177, -1, + -1, -1, -1, -1, 222, 223, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 194, -1, -1, 275, 237, + 199, 278, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 292, -1, -1, 295, -1, + -1, -1, -1, 222, 223, -1, -1, -1, -1, -1, + 394, -1, -1, -1, -1, -1, -1, 275, 237, -1, + 278, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 292, -1, -1, 295, -1, -1, + -1, -1, -1, -1, -1, 177, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 275, -1, -1, 278, + -1, -1, 194, -1, -1, -1, -1, 199, -1, -1, + -1, -1, -1, 292, -1, -1, 295, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 222, 223, -1, -1, -1, -1, -1, 394, -1, -1, + -1, -1, -1, -1, -1, 237, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 502, -1, + -1, 505, 506, 507, -1, 509, 510, 511, 512, 513, + 514, -1, -1, -1, -1, 519, 394, -1, -1, -1, + -1, -1, -1, 275, -1, -1, 278, -1, -1, -1, + -1, -1, -1, -1, 8, -1, -1, 11, -1, -1, + 292, 15, 16, 295, -1, 19, 20, 21, -1, -1, + -1, -1, -1, 8, -1, 394, 11, -1, -1, -1, + 15, 16, 17, 18, 19, 20, 21, -1, -1, -1, + -1, -1, 46, -1, -1, -1, -1, -1, -1, 53, + -1, 36, -1, -1, -1, 502, -1, -1, 505, 506, + 507, 46, 509, 510, 511, 512, 513, 514, 53, -1, + -1, -1, 519, -1, -1, -1, 80, -1, -1, -1, + 8, -1, -1, 11, -1, -1, -1, 15, 16, 17, + 18, 19, 20, 21, 502, 80, -1, 505, 506, 507, + -1, 509, 510, 511, 512, 513, 514, -1, 36, -1, + -1, 519, 394, -1, -1, -1, -1, -1, 46, -1, + -1, -1, -1, -1, -1, 53, -1, -1, -1, -1, + -1, -1, -1, 502, -1, -1, 505, 506, 507, -1, + 509, 510, 511, 512, 513, 514, -1, -1, 517, -1, + -1, -1, 80, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, 177, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 194, -1, 177, -1, -1, 199, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 194, + -1, -1, -1, -1, 199, -1, -1, -1, 222, 223, + 502, -1, -1, 505, 506, 507, -1, 509, 510, 511, + 512, 513, 514, 237, -1, 517, -1, 222, 223, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 177, + -1, -1, 237, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 194, -1, -1, -1, + -1, 199, -1, -1, 278, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 292, -1, + 275, -1, -1, 278, 222, 223, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, 292, -1, 237, + 295, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, 275, -1, -1, + 278, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 292, -1, -1, 295, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 394, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 394, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 394, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 502, -1, + -1, 505, 506, 507, -1, 509, 510, 511, 512, 513, + 514, -1, -1, -1, -1, -1, -1, 502, -1, -1, + 505, 506, 507, -1, 509, 510, 511, 512, 513, 514, + -1, -1, 517, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, 3, -1, -1, 502, -1, -1, 505, 506, 507, + -1, 509, 510, 511, 512, 513, 514, -1, -1, 517, + 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, + 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, + 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, + 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, + 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, + 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, + 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, + 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, + 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, + 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, + 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, + 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, + 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, + 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, + 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, + 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, + 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, + 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, + 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, + 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, + 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, + 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, + 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, + 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, + 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, + 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, + 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, + 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, + 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, + 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, + 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, + 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, + 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, + 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, + 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, + 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, + 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, + 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, + 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, + 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, + 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, + 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, + 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, + 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, + 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, + 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, + 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, + 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, + 3, -1, -1, -1, -1, -1, -1, -1, -1, 511, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 22, + 23, 24, 25, 26, 27, 28, 29, -1, 31, 32, + 33, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 43, 44, -1, 46, 47, 48, -1, 50, 51, 52, + 53, 54, -1, 56, 57, -1, 59, 60, 61, 62, + 63, 64, -1, -1, 67, 68, 69, 70, 71, 72, + 73, -1, 75, 76, 77, 78, 79, -1, -1, -1, + 83, 84, 85, 86, 87, 88, -1, 90, 91, 92, + -1, 94, 95, 96, 97, 98, 99, -1, -1, 102, + 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, + 113, 114, 115, 116, -1, 118, -1, 120, 121, 122, + 123, 124, 125, -1, -1, 128, 129, 130, 131, -1, + -1, 134, 135, 136, 137, 138, -1, 140, 141, 142, + -1, 144, 145, 146, -1, 148, 149, 150, 151, 152, + 153, 154, 155, 156, 157, 158, 159, -1, 161, -1, + 163, 164, 165, 166, -1, 168, -1, 170, -1, -1, + -1, 174, 175, 176, -1, 178, -1, 180, -1, 182, + 183, 184, 185, -1, 187, 188, 189, 190, 191, 192, + 193, -1, 195, 196, 197, 198, -1, 200, 201, 202, + 203, 204, 205, 206, -1, 208, -1, 210, 211, 212, + 213, 214, 215, 216, 217, -1, 219, -1, 221, -1, + -1, 224, -1, 226, 227, 228, 229, 230, 231, -1, + -1, 234, -1, 236, -1, -1, 239, 240, 241, 242, + 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, + 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, + 263, 264, 265, 266, 267, 268, -1, 270, 271, 272, + 273, 274, -1, 276, 277, -1, 279, -1, 281, 282, + 283, 284, 285, 286, -1, 288, 289, -1, -1, 292, + 293, 294, -1, -1, 297, 298, 299, -1, 301, -1, + 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, + 313, 314, -1, -1, -1, -1, 319, 320, 321, -1, + 323, 324, 325, 326, 327, 328, -1, 330, 331, 332, + 333, 334, 335, -1, 337, 338, 339, 340, 341, 342, + 343, 344, 345, 346, -1, 348, 349, 350, 351, 352, + 353, 354, 355, 356, 357, 358, 359, 360, -1, 362, + 363, -1, 365, 366, 367, 368, 369, 370, 371, 372, + 373, 374, 375, 376, 377, 378, 379, 380, 381, -1, + -1, 384, 385, 386, 387, 388, 389, 390, 391, 392, + -1, -1, 395, 396, 397, 398, -1, 400, 401, 402, + 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, + 413, 414, -1, -1, 417, 418, -1, 420, -1, 422, + 423, 424, 425, 426, -1, 428, 429, 430, -1, -1, + 433, 434, 435, 436, 437, -1, 439, 440, 441, 442, + 443, 444, 445, 446, -1, -1, 449, 450, 451, -1, + 453, 454, 455, 456, -1, 458, 459, 460, 461, 462, + 463, 464, 465, -1, 467, -1, 469, 470, 471, 472, + 473, 474, 475, -1, -1, 478, -1, -1, 481, 482, + 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, + 493, 494, 495, 496, 497, 498, 499, 500, 501, 3, + -1, -1, -1, -1, -1, -1, -1, -1, 511, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 22, 23, + 24, 25, 26, 27, 28, 29, -1, 31, 32, 33, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 43, + 44, -1, 46, 47, 48, -1, 50, 51, 52, 53, + 54, -1, 56, 57, -1, 59, 60, 61, 62, 63, + 64, -1, -1, 67, 68, 69, 70, 71, 72, 73, + -1, 75, 76, 77, 78, 79, -1, -1, -1, 83, + 84, 85, 86, 87, 88, -1, 90, 91, 92, -1, + 94, 95, 96, 97, 98, 99, -1, -1, 102, 103, + 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, + 114, 115, 116, -1, 118, -1, 120, 121, 122, 123, + 124, 125, -1, -1, 128, 129, 130, 131, -1, -1, + 134, 135, 136, 137, 138, -1, 140, 141, 142, -1, + 144, 145, 146, -1, 148, 149, 150, 151, 152, 153, + 154, 155, 156, 157, 158, 159, -1, 161, -1, 163, + 164, 165, 166, -1, 168, -1, 170, -1, -1, -1, + 174, 175, 176, -1, 178, -1, 180, -1, 182, 183, + 184, 185, -1, 187, 188, 189, 190, 191, 192, 193, + -1, 195, 196, 197, 198, -1, 200, 201, 202, 203, + 204, 205, 206, -1, 208, -1, 210, 211, 212, 213, + 214, 215, 216, 217, -1, 219, -1, 221, -1, -1, + 224, -1, 226, 227, 228, 229, 230, 231, -1, -1, + 234, -1, 236, -1, -1, 239, 240, 241, 242, 243, + 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, + 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, + 264, 265, 266, 267, 268, -1, 270, 271, 272, 273, + 274, -1, 276, 277, -1, 279, -1, 281, 282, 283, + 284, 285, 286, -1, 288, 289, -1, -1, 292, 293, + 294, -1, -1, 297, 298, 299, -1, 301, -1, 303, + 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, + 314, -1, -1, -1, -1, 319, 320, 321, -1, 323, + 324, 325, 326, 327, 328, -1, 330, 331, 332, 333, + 334, 335, -1, 337, 338, 339, 340, 341, 342, 343, + 344, 345, 346, -1, 348, 349, 350, 351, 352, 353, + 354, 355, 356, 357, 358, 359, 360, -1, 362, 363, + -1, 365, 366, 367, 368, 369, 370, 371, 372, 373, + 374, 375, 376, 377, 378, 379, 380, 381, -1, -1, + 384, 385, 386, 387, 388, 389, 390, 391, 392, -1, + -1, 395, 396, 397, 398, -1, 400, 401, 402, 403, + 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, + 414, -1, -1, 417, 418, -1, 420, -1, 422, 423, + 424, 425, 426, -1, 428, 429, 430, -1, -1, 433, + 434, 435, 436, 437, -1, 439, 440, 441, 442, 443, + 444, 445, 446, -1, -1, 449, 450, 451, -1, 453, + 454, 455, 456, -1, 458, 459, 460, 461, 462, 463, + 464, 465, -1, 467, -1, 469, 470, 471, 472, 473, + 474, 475, -1, -1, 478, -1, -1, 481, 482, 483, + 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, + 494, 495, 496, 497, 498, 499, 500, 501, 3, 4, + 5, -1, -1, -1, 9, -1, -1, 511, -1, -1, + -1, -1, -1, -1, -1, -1, -1, 22, 23, 24, + 25, 26, 27, 28, 29, -1, 31, 32, 33, -1, + -1, -1, 37, -1, -1, -1, -1, 42, 43, 44, + -1, 46, 47, 48, 49, 50, 51, 52, 53, 54, + 55, 56, 57, -1, 59, 60, 61, 62, 63, 64, + -1, -1, 67, 68, 69, 70, 71, 72, 73, -1, + 75, 76, 77, 78, 79, -1, 81, -1, 83, 84, + 85, 86, 87, 88, 89, 90, 91, 92, -1, 94, + 95, 96, 97, 98, 99, -1, 101, 102, 103, 104, + 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, + 115, 116, -1, 118, -1, 120, 121, 122, 123, 124, + 125, -1, -1, 128, 129, 130, 131, -1, -1, 134, + 135, 136, 137, 138, -1, 140, 141, 142, -1, 144, + 145, 146, -1, 148, 149, 150, 151, 152, 153, 154, + 155, 156, 157, 158, 159, 160, 161, -1, 163, 164, + 165, 166, -1, 168, -1, 170, 171, -1, 173, 174, + 175, 176, 177, 178, -1, 180, -1, 182, 183, 184, + 185, -1, 187, 188, 189, 190, 191, 192, 193, 194, + 195, 196, 197, 198, -1, 200, 201, 202, 203, 204, + 205, 206, -1, 208, 209, 210, 211, 212, 213, 214, + 215, 216, 217, -1, 219, -1, 221, 222, 223, 224, + 225, 226, 227, 228, 229, 230, 231, -1, -1, 234, + 235, 236, 237, -1, 239, 240, 241, 242, 243, 244, + 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, + 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, + 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, + -1, 276, 277, 278, 279, -1, 281, 282, 283, 284, + 285, 286, -1, 288, 289, 290, -1, 292, 293, 294, + -1, -1, 297, 298, 299, 300, 301, 302, 303, 304, + 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, + -1, -1, -1, -1, 319, 320, 321, 322, 323, 324, + 325, 326, 327, 328, -1, 330, 331, 332, 333, 334, + 335, -1, 337, 338, 339, 340, 341, 342, 343, 344, + 345, 346, -1, 348, 349, 350, 351, 352, 353, 354, + 355, 356, 357, 358, 359, 360, -1, 362, 363, 364, + 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, + 375, 376, 377, 378, 379, 380, 381, -1, 383, 384, + 385, 386, 387, 388, 389, 390, 391, 392, -1, 394, + 395, 396, 397, 398, -1, 400, 401, 402, 403, 404, + 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, + -1, -1, 417, 418, -1, 420, 421, 422, 423, 424, + 425, 426, -1, 428, 429, 430, -1, -1, 433, 434, + 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, + 445, 446, -1, -1, 449, 450, 451, -1, 453, 454, + 455, 456, -1, 458, 459, 460, 461, 462, 463, 464, + 465, -1, 467, 468, 469, 470, 471, 472, 473, 474, + 475, -1, -1, 478, -1, -1, 481, 482, 483, 484, + 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, + 495, 496, 497, 498, 499, 500, 501, -1, -1, 8, + -1, -1, 11, -1, 509, 510, 15, 16, 17, 18, + 19, 20, 21, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, 36, -1, -1, + -1, -1, 41, -1, -1, -1, -1, 46, 8, -1, + -1, 11, -1, -1, 53, 15, 16, 17, 18, 19, + 20, 21, -1, -1, -1, -1, 8, -1, -1, 11, + -1, -1, -1, 15, 16, -1, 36, 19, 20, 21, + -1, 80, -1, -1, -1, -1, 46, 8, -1, -1, + 11, -1, -1, 53, 15, 16, 17, 18, 19, 20, + 21, -1, -1, -1, 46, -1, -1, -1, -1, -1, + -1, 53, -1, -1, -1, 36, -1, -1, -1, -1, + 80, -1, -1, -1, -1, 46, -1, 126, -1, -1, + -1, -1, 53, -1, 8, -1, -1, 11, 80, -1, + -1, 15, 16, 17, 18, 19, 20, 21, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 80, + -1, -1, 36, -1, -1, -1, 40, -1, -1, -1, + -1, -1, 46, -1, -1, -1, -1, -1, 177, 53, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, 194, -1, -1, -1, -1, 199, -1, -1, - -1, -1, -1, 80, 167, -1, -1, -1, -1, 172, - -1, -1, -1, -1, 177, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 194, -1, -1, -1, -1, + 199, -1, -1, -1, -1, -1, 80, 167, -1, -1, + -1, -1, 172, -1, -1, -1, -1, 177, -1, -1, + -1, -1, -1, 222, 223, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 194, 177, -1, -1, 237, 199, + -1, -1, -1, -1, -1, 166, -1, -1, -1, -1, + -1, -1, 194, -1, -1, -1, 177, 199, -1, -1, + -1, -1, 222, 223, -1, -1, -1, -1, -1, -1, + -1, -1, -1, 194, -1, -1, 275, 237, 199, 278, 222, 223, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 194, 177, -1, -1, 237, 199, -1, -1, -1, - -1, -1, 166, -1, -1, -1, -1, -1, -1, 194, - -1, -1, -1, 177, 199, -1, -1, -1, -1, 222, - 223, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 194, -1, -1, 275, 237, 199, 278, 222, 223, -1, + -1, -1, -1, 292, -1, 237, 295, -1, -1, -1, + -1, 222, 223, 177, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 275, 237, -1, 278, -1, + 194, -1, -1, -1, -1, 199, -1, -1, -1, -1, + -1, -1, 292, 275, -1, 295, 278, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 222, 223, + 292, -1, -1, -1, 275, -1, -1, 278, -1, -1, + -1, -1, -1, 237, -1, -1, -1, -1, -1, -1, + -1, 292, -1, -1, 295, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 292, -1, 237, 295, -1, -1, -1, -1, 222, 223, - 177, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, 275, 237, -1, 278, -1, 194, -1, -1, - -1, -1, 199, -1, -1, -1, -1, -1, -1, 292, - -1, -1, 295, 278, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 222, 223, 292, -1, -1, - -1, 275, -1, -1, 278, -1, -1, -1, -1, -1, - 237, -1, -1, -1, -1, -1, -1, -1, 292, -1, - -1, 295, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 394, -1, -1, -1, -1, + -1, 275, -1, 324, 278, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 292, -1, + -1, 295, -1, -1, -1, -1, -1, -1, -1, 8, + -1, -1, 11, -1, 394, -1, 15, 16, 17, 18, + 19, 20, 21, -1, -1, -1, -1, -1, -1, -1, + -1, -1, 394, -1, -1, -1, -1, 36, 457, -1, + -1, -1, -1, -1, -1, -1, -1, 46, -1, -1, + -1, -1, -1, 394, 53, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, 394, -1, -1, -1, -1, -1, 275, -1, - 324, 278, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 292, -1, -1, 295, -1, - -1, -1, -1, -1, -1, -1, 8, -1, -1, 11, - -1, 394, -1, 15, 16, 17, 18, 19, 20, 21, - -1, -1, -1, -1, -1, -1, -1, -1, -1, 394, - -1, -1, -1, -1, 36, 457, -1, -1, -1, -1, - -1, -1, -1, -1, 46, -1, -1, -1, -1, -1, - 394, 53, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 80, -1, + -1, 80, -1, 502, -1, -1, 505, 506, 507, -1, + 509, 510, 511, 512, 513, 514, -1, -1, -1, -1, + 394, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, 502, -1, -1, 505, 506, 507, -1, 509, + 510, 511, 512, 513, 514, -1, -1, -1, -1, -1, 502, -1, -1, 505, 506, 507, -1, 509, 510, 511, - 512, 513, 514, -1, -1, -1, -1, 394, -1, -1, + 512, 513, 514, -1, -1, -1, -1, -1, -1, -1, + -1, 502, -1, -1, 505, 506, 507, -1, 509, 510, + 511, 512, 513, 514, -1, -1, -1, -1, 177, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, 502, - -1, -1, 505, 506, 507, -1, 509, 510, 511, 512, - 513, 514, -1, -1, -1, -1, -1, 502, -1, -1, - 505, 506, 507, -1, 509, 510, 511, 512, 513, 514, - -1, -1, -1, -1, -1, -1, -1, -1, 502, -1, + -1, -1, -1, -1, 8, 194, -1, 11, -1, -1, + 199, 15, 16, 17, 18, 19, 20, 21, 502, -1, -1, 505, 506, 507, -1, 509, 510, 511, 512, 513, - 514, -1, -1, -1, -1, 177, -1, -1, -1, -1, + 514, -1, 36, 222, 223, -1, 40, -1, -1, -1, + -1, -1, 46, -1, -1, -1, -1, -1, 237, 53, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 8, 194, -1, 11, -1, -1, 199, 15, 16, - 17, 18, 19, 20, 21, 502, -1, -1, 505, 506, - 507, -1, 509, 510, 511, 512, 513, 514, -1, 36, - 222, 223, -1, 40, -1, -1, -1, -1, -1, 46, - -1, -1, -1, -1, -1, 237, 53, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 8, -1, -1, - 11, -1, -1, 80, 15, 16, 17, 18, 19, 20, - 21, -1, -1, 275, -1, -1, 278, -1, -1, -1, - -1, -1, -1, -1, -1, 36, -1, -1, -1, -1, - 292, -1, -1, 295, -1, 46, -1, -1, -1, -1, - -1, -1, 53, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 318, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, 80, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 8, -1, -1, 11, - -1, -1, -1, 15, 16, 17, 18, 19, 20, 21, - 177, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, 36, -1, -1, 194, 40, -1, - -1, -1, 199, -1, 46, -1, -1, -1, -1, -1, - -1, 53, 394, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 222, 223, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 80, -1, - 237, 172, -1, -1, -1, -1, 177, -1, -1, -1, + 8, -1, -1, 11, -1, -1, 80, 15, 16, 17, + 18, 19, 20, 21, -1, -1, 275, -1, -1, 278, + -1, -1, -1, -1, -1, -1, -1, -1, 36, -1, + -1, -1, -1, 292, -1, -1, 295, -1, 46, -1, + -1, -1, -1, -1, -1, 53, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 318, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 194, -1, -1, -1, -1, 199, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 275, -1, - -1, 278, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 222, 223, -1, -1, 292, -1, -1, 295, -1, - -1, -1, -1, -1, -1, -1, 237, -1, -1, -1, + -1, -1, 80, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 8, + -1, -1, 11, -1, -1, -1, 15, 16, 17, 18, + 19, 20, 21, 177, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, 36, -1, -1, + 194, 40, -1, -1, -1, 199, -1, 46, -1, -1, + -1, -1, -1, -1, 53, 394, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 222, 223, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 502, -1, -1, 505, 506, 507, -1, 509, 510, 511, - 512, 513, 514, -1, -1, 177, -1, -1, -1, -1, - -1, -1, -1, -1, 275, -1, -1, 278, -1, -1, - -1, -1, 194, -1, -1, -1, -1, 199, -1, -1, - -1, 292, -1, -1, 295, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 8, -1, -1, 11, -1, - 222, 223, 15, 16, 17, 18, 19, 20, 21, -1, - -1, -1, -1, -1, -1, 237, -1, 394, -1, -1, - -1, -1, -1, 36, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 46, -1, -1, -1, -1, -1, -1, - 53, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, 8, 275, -1, 11, 278, -1, -1, 15, - 16, 17, 18, 19, 20, 21, -1, 80, -1, -1, - 292, -1, -1, 295, -1, -1, -1, -1, -1, -1, - 36, -1, -1, 394, -1, -1, -1, -1, -1, -1, - 46, -1, -1, -1, -1, -1, -1, 53, -1, -1, + -1, 80, -1, 237, 172, -1, -1, -1, -1, 177, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 194, -1, -1, -1, + -1, 199, -1, -1, -1, -1, -1, -1, -1, -1, + -1, 275, -1, -1, 278, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 222, 223, -1, -1, 292, -1, + -1, 295, -1, -1, -1, -1, -1, -1, -1, 237, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, 80, 502, -1, -1, 505, 506, - 507, -1, 509, 510, 511, 512, 513, 514, -1, 8, - -1, -1, 11, -1, -1, -1, 15, 16, 17, 18, - 19, 20, 21, -1, 167, -1, -1, -1, -1, -1, - -1, -1, -1, -1, 177, -1, -1, 36, -1, -1, - -1, 40, 394, -1, -1, -1, -1, 46, -1, -1, - -1, 194, -1, -1, 53, -1, 199, -1, -1, -1, - -1, 502, -1, -1, 505, 506, 507, -1, 509, 510, - 511, 512, 513, 514, -1, -1, -1, -1, -1, 222, - 223, 80, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 177, -1, -1, 237, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 194, -1, - -1, -1, -1, 199, -1, -1, -1, -1, 8, -1, - -1, 11, -1, -1, -1, 15, 16, 17, 18, 19, - 20, 21, 275, -1, -1, 278, 222, 223, -1, -1, - -1, -1, -1, -1, -1, -1, 36, -1, -1, 292, - 502, 237, 295, 505, 506, 507, 46, 509, 510, 511, - 512, 513, 514, 53, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 177, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, 275, - 80, -1, 278, -1, -1, 194, -1, -1, -1, -1, - 199, -1, -1, -1, -1, -1, 292, -1, -1, 295, + -1, -1, -1, 502, -1, -1, 505, 506, 507, -1, + 509, 510, 511, 512, 513, 514, -1, -1, 177, -1, + -1, -1, -1, -1, -1, -1, -1, 275, -1, -1, + 278, -1, -1, -1, -1, 194, -1, -1, -1, -1, + 199, -1, -1, -1, 292, -1, -1, 295, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 8, -1, -1, 11, -1, 222, 223, 15, 16, 17, 18, 19, 20, 21, -1, -1, -1, -1, -1, -1, 237, -1, - -1, -1, -1, -1, -1, -1, 36, -1, -1, -1, - -1, 394, -1, -1, -1, -1, 46, -1, -1, -1, + 394, -1, -1, -1, -1, -1, 36, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 46, -1, -1, -1, -1, -1, -1, 53, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 275, -1, -1, 278, - -1, -1, -1, -1, -1, -1, -1, 177, -1, -1, + -1, -1, -1, -1, -1, 8, 275, -1, 11, 278, + -1, -1, 15, 16, 17, 18, 19, 20, 21, -1, 80, -1, -1, 292, -1, -1, 295, -1, -1, -1, - -1, -1, -1, -1, 194, -1, -1, 8, 394, 199, - 11, -1, -1, -1, 15, 16, 17, 18, 19, 20, - 21, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, 222, 223, -1, 36, -1, -1, -1, -1, - -1, 427, -1, -1, -1, 46, -1, 237, -1, -1, - -1, -1, 53, -1, -1, -1, -1, -1, -1, 502, + -1, -1, -1, 36, -1, -1, 394, -1, -1, -1, + -1, -1, -1, 46, -1, -1, -1, -1, -1, -1, + 53, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, 80, 502, -1, + -1, 505, 506, 507, -1, 509, 510, 511, 512, 513, + 514, -1, 8, -1, -1, 11, -1, -1, -1, 15, + 16, 17, 18, 19, 20, 21, -1, 167, -1, -1, + -1, -1, -1, -1, -1, -1, -1, 177, -1, -1, + 36, -1, -1, -1, 40, 394, -1, -1, -1, -1, + 46, -1, -1, -1, 194, -1, -1, 53, -1, 199, + -1, -1, -1, -1, 502, -1, -1, 505, 506, 507, + -1, 509, 510, 511, 512, 513, 514, -1, -1, -1, + -1, -1, 222, 223, 80, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 177, -1, -1, 237, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, 194, -1, -1, -1, -1, 199, -1, -1, -1, + -1, 8, -1, -1, 11, -1, -1, -1, 15, 16, + 17, 18, 19, 20, 21, 275, -1, -1, 278, 222, + 223, -1, -1, -1, -1, -1, -1, -1, -1, 36, + -1, -1, 292, 502, 237, 295, 505, 506, 507, 46, + 509, 510, 511, 512, 513, 514, 53, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, 177, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, 275, 80, -1, 278, -1, -1, 194, -1, + -1, -1, -1, 199, -1, -1, -1, -1, -1, 292, + -1, -1, 295, -1, -1, -1, -1, -1, -1, -1, + -1, 8, -1, -1, 11, -1, 222, 223, 15, 16, + 17, 18, 19, 20, 21, -1, -1, -1, -1, -1, + -1, 237, -1, -1, -1, -1, -1, -1, -1, 36, + -1, -1, -1, -1, 394, -1, -1, -1, -1, 46, + -1, -1, -1, -1, -1, -1, 53, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 275, + -1, -1, 278, -1, -1, -1, -1, -1, -1, -1, + 177, -1, -1, 80, -1, -1, 292, -1, -1, 295, + -1, -1, -1, -1, -1, -1, -1, 194, -1, -1, + 8, 394, 199, 11, -1, -1, -1, 15, 16, 17, + 18, 19, 20, 21, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 222, 223, -1, 36, -1, + -1, -1, -1, -1, 427, -1, -1, -1, 46, -1, + 237, -1, -1, -1, -1, 53, -1, -1, -1, -1, + -1, -1, 502, -1, -1, 505, 506, 507, -1, 509, + 510, 511, 512, 513, 514, -1, -1, -1, -1, -1, + -1, -1, 80, -1, -1, -1, -1, -1, 275, -1, + 177, 278, -1, -1, -1, -1, -1, -1, 394, -1, + -1, -1, -1, -1, -1, 292, -1, 194, 295, -1, + -1, -1, 199, -1, -1, -1, -1, -1, -1, 502, -1, -1, 505, 506, 507, -1, 509, 510, 511, 512, - 513, 514, -1, -1, -1, -1, -1, -1, -1, 80, - -1, -1, -1, -1, -1, 275, -1, 177, 278, -1, - -1, -1, -1, -1, -1, 394, -1, -1, -1, -1, - -1, -1, 292, -1, 194, 295, -1, -1, -1, 199, - -1, -1, -1, -1, -1, -1, 502, -1, -1, 505, + 513, 514, -1, -1, -1, 222, 223, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 237, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 177, + -1, -1, -1, -1, -1, -1, -1, -1, 275, -1, + -1, 278, -1, -1, -1, -1, 194, -1, -1, -1, + -1, 199, -1, -1, -1, 292, 502, 394, 295, 505, 506, 507, -1, 509, 510, 511, 512, 513, 514, -1, - -1, -1, 222, 223, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 237, -1, -1, + -1, -1, -1, -1, 222, 223, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 237, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 177, -1, -1, -1, - -1, -1, -1, -1, -1, 275, -1, -1, 278, -1, - -1, -1, -1, 194, -1, -1, -1, -1, 199, -1, - -1, -1, 292, 502, 394, 295, 505, 506, 507, -1, - 509, 510, 511, 512, 513, 514, -1, -1, -1, -1, - -1, 222, 223, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 237, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, 275, -1, -1, + 278, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 292, -1, -1, 295, -1, -1, + -1, -1, -1, -1, -1, -1, -1, 394, -1, -1, + -1, -1, -1, -1, -1, 502, -1, -1, 505, 506, + 507, -1, 509, 510, 511, 512, 513, 514, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, 275, -1, -1, 278, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 292, -1, -1, 295, -1, -1, -1, -1, -1, - -1, -1, -1, -1, 394, -1, -1, -1, -1, -1, - -1, -1, 502, -1, -1, 505, 506, 507, -1, 509, - 510, 511, 512, 513, 514, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 394, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 502, -1, -1, 505, 506, + 507, -1, 509, 510, 511, 512, 513, 514, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 394, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, 502, -1, -1, 505, 506, 507, -1, 509, - 510, 511, 512, 513, 514, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 3, -1, + 5, -1, -1, -1, 502, -1, -1, 505, 506, 507, + -1, 509, 510, 511, 512, 513, 514, 22, 23, 24, + 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, + 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, + 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, + 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, + 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, + 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, + 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, + 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, + 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, + 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, + 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, + 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, + 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, + 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, + 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, + 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, + 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, + 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, + 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, + 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, + 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, + 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, + 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, + 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, + 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, + 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, + 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, + 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, + 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, + 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, + 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, + 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, + 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, + 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, + 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, + 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, + 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, + 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, + 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, + 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, + 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, + 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, + 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, + 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, + 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, + 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, + 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, + 495, 496, 497, 498, 499, 500, 501, 3, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 22, 23, 24, 25, + 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, + 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, + 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, + 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, + 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, + 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, + 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, + 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, + 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, + 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, + 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, + 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, + 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, + 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, + 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, + 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, + 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, + 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, + 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, + 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, + 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, + 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, + 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, + 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, + 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, + 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, + 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, + 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, + 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, + 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, + 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, + 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, + 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, + 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, + 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, + 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, + 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, + 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, + 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, + 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, + 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, + 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, + 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, + 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, + 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, + 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, + 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, + 496, 497, 498, 499, 500, 501, 3, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 22, 23, 24, 25, 26, + 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, + 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, + 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, + 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, + 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, + 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, + 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, + 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, + 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, + 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, + 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, + 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, + 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, + 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, + 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, + 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, + 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, + 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, + 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, + 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, + 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, + 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, + 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, + 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, + 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, + 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, + 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, + 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, + 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, + 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, + 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, + 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, + 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, + 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, + 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, + 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, + 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, + 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, + 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, + 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, + 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, + 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, + 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, + 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, + 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, + 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, + 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, + 497, 498, 499, 500, 501, 3, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 3, -1, 5, -1, -1, - -1, 502, -1, -1, 505, 506, 507, -1, 509, 510, - 511, 512, 513, 514, 22, 23, 24, 25, 26, 27, + -1, -1, -1, -1, 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, @@ -16755,160 +16907,160 @@ static const yytype_int16 yycheck[] = 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, - 499, 500, 501, 3, -1, -1, -1, -1, -1, -1, + 499, 500, 501, 3, -1, 5, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 22, 23, 24, 25, 26, 27, 28, 29, - 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, - 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, - 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, - 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, - 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, - 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, - 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, - 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, - 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, - 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, - 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, - 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, + -1, 31, 32, 33, -1, -1, -1, 37, -1, -1, + -1, -1, 42, 43, 44, -1, 46, 47, 48, 49, + 50, 51, 52, 53, 54, 55, 56, 57, -1, 59, + 60, 61, 62, 63, 64, -1, -1, 67, 68, 69, + 70, 71, 72, 73, -1, 75, 76, 77, 78, 79, + -1, 81, -1, 83, 84, 85, 86, 87, 88, 89, + 90, 91, 92, -1, 94, 95, 96, 97, 98, 99, + -1, 101, 102, 103, 104, 105, 106, 107, 108, 109, + 110, 111, 112, 113, 114, 115, 116, -1, 118, -1, + 120, 121, 122, 123, 124, 125, -1, -1, 128, 129, + 130, 131, -1, -1, 134, 135, 136, 137, 138, -1, + 140, 141, 142, -1, 144, 145, 146, -1, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, - 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, - 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, - 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, - 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, - 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, - 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, - 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, - 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, + 160, 161, -1, 163, 164, 165, 166, -1, 168, -1, + 170, 171, -1, 173, 174, 175, 176, 177, 178, -1, + 180, -1, 182, 183, 184, 185, -1, 187, 188, 189, + 190, 191, 192, 193, 194, 195, 196, 197, 198, -1, + 200, 201, 202, 203, 204, 205, 206, -1, 208, 209, + 210, 211, 212, 213, 214, 215, 216, 217, -1, 219, + -1, 221, 222, 223, 224, 225, 226, 227, 228, 229, + 230, 231, -1, -1, 234, 235, 236, 237, -1, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, - 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, - 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, - 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, + 270, 271, 272, 273, 274, -1, 276, 277, 278, 279, + -1, 281, 282, 283, 284, 285, 286, -1, 288, 289, + 290, -1, 292, 293, 294, -1, -1, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, - 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, - 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, - 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, - 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, + 310, 311, 312, 313, 314, -1, -1, -1, -1, 319, + 320, 321, 322, 323, 324, 325, 326, 327, 328, -1, + 330, 331, 332, 333, 334, 335, -1, 337, 338, 339, + 340, 341, 342, 343, 344, 345, 346, -1, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, - 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, + 360, -1, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, - 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, - 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, + 380, 381, -1, 383, 384, 385, 386, 387, 388, 389, + 390, 391, 392, -1, 394, 395, 396, 397, 398, -1, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, - 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, - 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, - 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, - 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, - 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, - 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, - 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, - 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, + 410, 411, 412, 413, 414, -1, -1, 417, 418, -1, + 420, 421, 422, 423, 424, 425, 426, -1, 428, 429, + 430, -1, -1, 433, 434, 435, 436, 437, 438, 439, + 440, 441, 442, 443, 444, 445, 446, -1, -1, 449, + 450, 451, -1, 453, 454, 455, 456, -1, 458, 459, + 460, 461, 462, 463, 464, 465, -1, 467, 468, 469, + 470, 471, 472, 473, 474, 475, -1, -1, 478, -1, + -1, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, 3, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 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, + -1, 22, 23, 24, 25, 26, 27, 28, 29, -1, + 31, 32, 33, 34, 35, -1, 37, -1, -1, -1, + -1, 42, 43, 44, -1, 46, 47, 48, 49, 50, + 51, 52, 53, 54, 55, 56, 57, -1, 59, 60, + 61, 62, 63, 64, -1, -1, 67, 68, 69, 70, + 71, 72, 73, -1, 75, 76, 77, 78, 79, -1, + 81, -1, 83, 84, 85, 86, 87, 88, 89, 90, + 91, 92, -1, 94, 95, 96, 97, 98, 99, -1, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, - 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, - 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, - 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, - 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, - 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, - 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, - 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, - 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, - 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, - 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, - 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, + 111, 112, 113, 114, 115, 116, -1, 118, -1, 120, + 121, 122, 123, 124, 125, -1, -1, 128, 129, 130, + 131, -1, -1, 134, 135, 136, 137, 138, -1, 140, + 141, 142, -1, 144, 145, 146, -1, 148, 149, 150, + 151, 152, 153, 154, 155, 156, 157, 158, 159, -1, + 161, -1, 163, 164, 165, 166, -1, 168, -1, 170, + 171, -1, 173, 174, 175, 176, 177, 178, -1, 180, + -1, 182, 183, 184, 185, -1, 187, 188, 189, 190, + 191, 192, 193, 194, 195, 196, 197, 198, -1, 200, + 201, 202, 203, 204, 205, 206, -1, 208, 209, 210, + 211, 212, 213, 214, 215, 216, 217, -1, 219, -1, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, - 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, + 231, -1, -1, 234, 235, 236, 237, -1, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, - 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, - 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, - 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, + 271, 272, 273, 274, -1, 276, 277, 278, 279, -1, + 281, 282, 283, 284, 285, 286, -1, 288, 289, -1, + -1, 292, 293, 294, -1, -1, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, - 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, - 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, - 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, - 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, + 311, 312, 313, 314, -1, -1, -1, -1, 319, 320, + 321, 322, 323, 324, 325, 326, 327, 328, -1, 330, + 331, 332, 333, 334, 335, -1, 337, 338, 339, 340, + 341, 342, 343, 344, 345, 346, -1, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, - 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, + -1, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, - 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, - 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, + 381, -1, 383, 384, 385, 386, 387, 388, 389, 390, + 391, 392, -1, 394, 395, 396, 397, 398, -1, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, - 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, - 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, - 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, - 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, - 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, - 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, - 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, + 411, 412, 413, 414, -1, -1, 417, 418, -1, 420, + 421, 422, 423, 424, 425, 426, -1, 428, 429, 430, + -1, -1, 433, 434, 435, 436, 437, -1, 439, 440, + 441, 442, 443, 444, 445, 446, -1, -1, 449, 450, + 451, -1, 453, 454, 455, 456, -1, 458, 459, 460, + 461, 462, 463, 464, 465, -1, 467, 468, 469, 470, + 471, 472, 473, 474, 475, -1, -1, 478, -1, -1, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, 3, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 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, + 22, 23, 24, 25, 26, 27, 28, 29, -1, 31, + 32, 33, -1, -1, -1, -1, -1, -1, -1, -1, + 42, 43, 44, -1, 46, 47, 48, 49, 50, 51, + 52, 53, 54, 55, 56, 57, -1, 59, 60, 61, + 62, 63, 64, -1, 66, 67, 68, 69, 70, 71, + 72, 73, -1, 75, 76, 77, 78, 79, -1, 81, + -1, 83, 84, 85, 86, 87, 88, 89, 90, 91, + 92, -1, 94, 95, 96, 97, 98, 99, -1, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, - 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, - 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, - 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, - 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, - 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, - 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, - 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, - 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, - 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, - 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, - 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, + 112, 113, 114, 115, 116, -1, 118, -1, 120, 121, + 122, 123, 124, 125, -1, -1, 128, 129, 130, 131, + -1, -1, 134, 135, 136, 137, 138, -1, 140, 141, + 142, -1, 144, 145, 146, -1, 148, 149, 150, 151, + 152, 153, 154, 155, 156, 157, 158, 159, -1, 161, + -1, 163, 164, 165, 166, -1, 168, -1, 170, 171, + -1, 173, 174, 175, 176, 177, 178, -1, 180, -1, + 182, 183, 184, 185, -1, 187, 188, 189, 190, 191, + 192, 193, 194, 195, 196, 197, 198, -1, 200, 201, + 202, 203, 204, 205, 206, -1, 208, 209, 210, 211, + 212, 213, 214, 215, 216, 217, -1, 219, -1, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, - 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, + -1, -1, 234, 235, 236, 237, -1, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, - 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, - 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, - 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, + 272, 273, 274, -1, 276, 277, 278, 279, -1, 281, + 282, 283, 284, 285, 286, -1, 288, 289, -1, -1, + 292, 293, 294, -1, -1, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, - 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, - 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, - 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, - 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, - 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, + 312, 313, 314, -1, -1, -1, -1, 319, 320, 321, + 322, 323, 324, 325, 326, 327, 328, -1, 330, 331, + 332, 333, 334, 335, -1, 337, 338, 339, 340, 341, + 342, 343, 344, 345, 346, -1, 348, 349, 350, 351, + 352, 353, 354, 355, 356, 357, 358, 359, 360, -1, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, - 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, - 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, + -1, -1, 384, 385, 386, 387, 388, 389, 390, 391, + 392, -1, 394, 395, 396, 397, 398, -1, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, - 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, - 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, - 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, - 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, - 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, - 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, - 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, + 412, 413, 414, -1, -1, 417, 418, -1, 420, 421, + 422, 423, 424, 425, 426, -1, 428, 429, 430, -1, + -1, 433, 434, 435, 436, 437, -1, 439, 440, 441, + 442, 443, 444, 445, 446, -1, -1, 449, 450, 451, + -1, 453, 454, 455, 456, -1, 458, 459, 460, 461, + 462, 463, 464, 465, -1, 467, 468, 469, 470, 471, + 472, 473, 474, 475, -1, -1, 478, -1, -1, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, - 3, -1, 5, -1, -1, -1, -1, -1, -1, -1, + 3, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 22, 23, 24, 25, 26, 27, 28, 29, -1, 31, 32, - 33, -1, -1, -1, 37, -1, -1, -1, -1, 42, + 33, -1, -1, -1, -1, -1, -1, -1, -1, 42, 43, 44, -1, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, -1, 59, 60, 61, 62, 63, 64, -1, -1, 67, 68, 69, 70, 71, 72, @@ -16920,7 +17072,7 @@ static const yytype_int16 yycheck[] = 123, 124, 125, -1, -1, 128, 129, 130, 131, -1, -1, 134, 135, 136, 137, 138, -1, 140, 141, 142, -1, 144, 145, 146, -1, 148, 149, 150, 151, 152, - 153, 154, 155, 156, 157, 158, 159, 160, 161, -1, + 153, 154, 155, 156, 157, 158, 159, -1, 161, -1, 163, 164, 165, 166, -1, 168, -1, 170, 171, -1, 173, 174, 175, 176, 177, 178, -1, 180, -1, 182, 183, 184, 185, -1, 187, 188, 189, 190, 191, 192, @@ -16933,7 +17085,7 @@ static const yytype_int16 yycheck[] = 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, -1, 276, 277, 278, 279, -1, 281, 282, - 283, 284, 285, 286, -1, 288, 289, 290, -1, 292, + 283, 284, 285, 286, -1, 288, 289, -1, -1, 292, 293, 294, -1, -1, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, -1, -1, -1, -1, 319, 320, 321, 322, @@ -16943,12 +17095,12 @@ static const yytype_int16 yycheck[] = 353, 354, 355, 356, 357, 358, 359, 360, -1, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, -1, - 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, + -1, 384, 385, 386, 387, 388, 389, 390, 391, 392, -1, 394, 395, 396, 397, 398, -1, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, -1, -1, 417, 418, -1, 420, 421, 422, 423, 424, 425, 426, -1, 428, 429, 430, -1, -1, - 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, + 433, 434, 435, 436, 437, -1, 439, 440, 441, 442, 443, 444, 445, 446, -1, -1, 449, 450, 451, -1, 453, 454, 455, 456, -1, 458, 459, 460, 461, 462, 463, 464, 465, -1, 467, 468, 469, 470, 471, 472, @@ -16958,162 +17110,162 @@ static const yytype_int16 yycheck[] = -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 22, 23, 24, 25, 26, 27, 28, 29, -1, 31, 32, 33, - 34, 35, -1, 37, -1, -1, -1, -1, 42, 43, - 44, -1, 46, 47, 48, 49, 50, 51, 52, 53, - 54, 55, 56, 57, -1, 59, 60, 61, 62, 63, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 43, + 44, -1, 46, 47, 48, -1, 50, 51, 52, 53, + 54, -1, 56, 57, -1, 59, 60, 61, 62, 63, 64, -1, -1, 67, 68, 69, 70, 71, 72, 73, - -1, 75, 76, 77, 78, 79, -1, 81, -1, 83, - 84, 85, 86, 87, 88, 89, 90, 91, 92, -1, - 94, 95, 96, 97, 98, 99, -1, 101, 102, 103, + 74, 75, 76, 77, 78, 79, -1, -1, 82, 83, + 84, 85, 86, 87, 88, -1, 90, 91, 92, 93, + 94, 95, 96, 97, 98, 99, -1, -1, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, -1, 118, -1, 120, 121, 122, 123, 124, 125, -1, -1, 128, 129, 130, 131, -1, -1, 134, 135, 136, 137, 138, -1, 140, 141, 142, -1, 144, 145, 146, -1, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, -1, 161, -1, 163, - 164, 165, 166, -1, 168, -1, 170, 171, -1, 173, - 174, 175, 176, 177, 178, -1, 180, -1, 182, 183, + 164, 165, 166, -1, 168, 169, 170, -1, -1, -1, + 174, 175, 176, -1, 178, -1, 180, -1, 182, 183, 184, 185, -1, 187, 188, 189, 190, 191, 192, 193, - 194, 195, 196, 197, 198, -1, 200, 201, 202, 203, - 204, 205, 206, -1, 208, 209, 210, 211, 212, 213, - 214, 215, 216, 217, -1, 219, -1, 221, 222, 223, - 224, 225, 226, 227, 228, 229, 230, 231, -1, -1, - 234, 235, 236, 237, -1, 239, 240, 241, 242, 243, + -1, 195, 196, 197, 198, -1, 200, 201, 202, 203, + 204, 205, 206, -1, 208, -1, 210, 211, 212, 213, + 214, 215, 216, 217, -1, 219, -1, 221, -1, -1, + 224, -1, 226, 227, 228, 229, 230, 231, -1, -1, + 234, -1, 236, -1, -1, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, - 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, - 274, -1, 276, 277, 278, 279, -1, 281, 282, 283, + 264, 265, 266, 267, 268, -1, 270, 271, 272, 273, + 274, -1, 276, 277, -1, 279, -1, 281, 282, 283, 284, 285, 286, -1, 288, 289, -1, -1, 292, 293, - 294, -1, -1, 297, 298, 299, 300, 301, 302, 303, + 294, -1, -1, 297, 298, 299, -1, 301, -1, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, - 314, -1, -1, -1, -1, 319, 320, 321, 322, 323, - 324, 325, 326, 327, 328, -1, 330, 331, 332, 333, + 314, -1, -1, -1, -1, 319, 320, 321, -1, 323, + 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, -1, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, -1, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, -1, 362, 363, - 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, - 374, 375, 376, 377, 378, 379, 380, 381, -1, 383, + -1, 365, 366, 367, 368, 369, 370, 371, 372, 373, + 374, 375, 376, 377, 378, 379, 380, 381, -1, -1, 384, 385, 386, 387, 388, 389, 390, 391, 392, -1, - 394, 395, 396, 397, 398, -1, 400, 401, 402, 403, + -1, 395, 396, 397, 398, -1, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, - 414, -1, -1, 417, 418, -1, 420, 421, 422, 423, + 414, -1, -1, 417, 418, -1, 420, -1, 422, 423, 424, 425, 426, -1, 428, 429, 430, -1, -1, 433, 434, 435, 436, 437, -1, 439, 440, 441, 442, 443, - 444, 445, 446, -1, -1, 449, 450, 451, -1, 453, + 444, 445, 446, -1, 448, 449, 450, 451, -1, 453, 454, 455, 456, -1, 458, 459, 460, 461, 462, 463, - 464, 465, -1, 467, 468, 469, 470, 471, 472, 473, + 464, 465, -1, 467, -1, 469, 470, 471, 472, 473, 474, 475, -1, -1, 478, -1, -1, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, 3, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 22, 23, 24, 25, 26, 27, 28, 29, -1, 31, 32, 33, -1, - -1, -1, -1, -1, -1, -1, -1, 42, 43, 44, - -1, 46, 47, 48, 49, 50, 51, 52, 53, 54, - 55, 56, 57, -1, 59, 60, 61, 62, 63, 64, - -1, 66, 67, 68, 69, 70, 71, 72, 73, -1, - 75, 76, 77, 78, 79, -1, 81, -1, 83, 84, - 85, 86, 87, 88, 89, 90, 91, 92, -1, 94, - 95, 96, 97, 98, 99, -1, 101, 102, 103, 104, + -1, -1, -1, -1, -1, -1, -1, -1, 43, 44, + -1, 46, 47, 48, -1, 50, 51, 52, 53, 54, + -1, 56, 57, -1, 59, 60, 61, 62, 63, 64, + -1, -1, 67, 68, 69, 70, 71, 72, 73, 74, + 75, 76, 77, 78, 79, -1, -1, -1, 83, 84, + 85, 86, 87, 88, -1, 90, 91, 92, 93, 94, + 95, 96, 97, 98, 99, -1, -1, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, -1, 118, -1, 120, 121, 122, 123, 124, 125, -1, -1, 128, 129, 130, 131, -1, -1, 134, 135, 136, 137, 138, -1, 140, 141, 142, -1, 144, 145, 146, -1, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, -1, 161, -1, 163, 164, - 165, 166, -1, 168, -1, 170, 171, -1, 173, 174, - 175, 176, 177, 178, -1, 180, -1, 182, 183, 184, - 185, -1, 187, 188, 189, 190, 191, 192, 193, 194, + 165, 166, -1, 168, 169, 170, -1, -1, -1, 174, + 175, 176, -1, 178, -1, 180, -1, 182, 183, 184, + 185, -1, 187, 188, 189, 190, 191, 192, 193, -1, 195, 196, 197, 198, -1, 200, 201, 202, 203, 204, - 205, 206, -1, 208, 209, 210, 211, 212, 213, 214, - 215, 216, 217, -1, 219, -1, 221, 222, 223, 224, - 225, 226, 227, 228, 229, 230, 231, -1, -1, 234, - 235, 236, 237, -1, 239, 240, 241, 242, 243, 244, + 205, 206, -1, 208, -1, 210, 211, 212, 213, 214, + 215, 216, 217, -1, 219, -1, 221, -1, -1, 224, + -1, 226, 227, 228, 229, 230, 231, -1, -1, 234, + -1, 236, 237, -1, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, - 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, - -1, 276, 277, 278, 279, -1, 281, 282, 283, 284, + 265, 266, 267, 268, -1, 270, 271, 272, 273, 274, + -1, 276, 277, -1, 279, -1, 281, 282, 283, 284, 285, 286, -1, 288, 289, -1, -1, 292, 293, 294, - -1, -1, 297, 298, 299, 300, 301, 302, 303, 304, + -1, -1, 297, 298, 299, -1, 301, -1, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, - -1, -1, -1, -1, 319, 320, 321, 322, 323, 324, - 325, 326, 327, 328, -1, 330, 331, 332, 333, 334, + -1, -1, -1, -1, 319, 320, 321, -1, 323, 324, + 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, -1, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, -1, 348, 349, 350, 351, 352, 353, 354, - 355, 356, 357, 358, 359, 360, -1, 362, 363, 364, + 355, 356, 357, 358, 359, 360, -1, 362, 363, -1, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, -1, -1, 384, - 385, 386, 387, 388, 389, 390, 391, 392, -1, 394, + 385, 386, 387, 388, 389, 390, 391, 392, -1, -1, 395, 396, 397, 398, -1, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, - -1, -1, 417, 418, -1, 420, 421, 422, 423, 424, + -1, -1, 417, 418, -1, 420, -1, 422, 423, 424, 425, 426, -1, 428, 429, 430, -1, -1, 433, 434, 435, 436, 437, -1, 439, 440, 441, 442, 443, 444, - 445, 446, -1, -1, 449, 450, 451, -1, 453, 454, + 445, 446, -1, 448, 449, 450, 451, -1, 453, 454, 455, 456, -1, 458, 459, 460, 461, 462, 463, 464, - 465, -1, 467, 468, 469, 470, 471, 472, 473, 474, + 465, -1, 467, -1, 469, 470, 471, 472, 473, 474, 475, -1, -1, 478, -1, -1, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, - 495, 496, 497, 498, 499, 500, 501, 3, -1, -1, + 495, 496, 497, 498, 499, 500, 501, 3, -1, 5, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 22, 23, 24, 25, - 26, 27, 28, 29, -1, 31, 32, 33, -1, -1, - -1, -1, -1, -1, -1, -1, 42, 43, 44, -1, - 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, + 26, 27, 28, 29, -1, 31, 32, 33, 34, 35, + -1, -1, -1, -1, -1, -1, -1, 43, 44, -1, + 46, 47, 48, -1, 50, 51, 52, 53, 54, -1, 56, 57, -1, 59, 60, 61, 62, 63, 64, -1, -1, 67, 68, 69, 70, 71, 72, 73, -1, 75, - 76, 77, 78, 79, -1, 81, -1, 83, 84, 85, - 86, 87, 88, 89, 90, 91, 92, -1, 94, 95, - 96, 97, 98, 99, -1, 101, 102, 103, 104, 105, + 76, 77, 78, 79, -1, -1, -1, 83, 84, 85, + 86, 87, 88, -1, 90, 91, 92, -1, 94, 95, + 96, 97, 98, 99, -1, -1, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, -1, 118, -1, 120, 121, 122, 123, 124, 125, -1, -1, 128, 129, 130, 131, -1, -1, 134, 135, 136, 137, 138, -1, 140, 141, 142, -1, 144, 145, 146, -1, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, -1, 161, -1, 163, 164, 165, - 166, -1, 168, -1, 170, 171, -1, 173, 174, 175, - 176, 177, 178, -1, 180, -1, 182, 183, 184, 185, - -1, 187, 188, 189, 190, 191, 192, 193, 194, 195, + 166, -1, 168, -1, 170, -1, -1, -1, 174, 175, + 176, -1, 178, -1, 180, -1, 182, 183, 184, 185, + -1, 187, 188, 189, 190, 191, 192, 193, -1, 195, 196, 197, 198, -1, 200, 201, 202, 203, 204, 205, - 206, -1, 208, 209, 210, 211, 212, 213, 214, 215, - 216, 217, -1, 219, -1, 221, 222, 223, 224, 225, - 226, 227, 228, 229, 230, 231, -1, -1, 234, 235, - 236, 237, -1, 239, 240, 241, 242, 243, 244, 245, + 206, -1, 208, -1, 210, 211, 212, 213, 214, 215, + 216, 217, -1, 219, -1, 221, -1, -1, 224, -1, + 226, 227, 228, 229, 230, 231, -1, -1, 234, -1, + 236, -1, -1, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, - 266, 267, 268, 269, 270, 271, 272, 273, 274, -1, - 276, 277, 278, 279, -1, 281, 282, 283, 284, 285, + 266, 267, 268, -1, 270, 271, 272, 273, 274, -1, + 276, 277, -1, 279, -1, 281, 282, 283, 284, 285, 286, -1, 288, 289, -1, -1, 292, 293, 294, -1, - -1, 297, 298, 299, 300, 301, 302, 303, 304, 305, + -1, 297, 298, 299, -1, 301, -1, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, -1, - -1, -1, -1, 319, 320, 321, 322, 323, 324, 325, + -1, -1, -1, 319, 320, 321, -1, 323, 324, 325, 326, 327, 328, -1, 330, 331, 332, 333, 334, 335, -1, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, -1, 348, 349, 350, 351, 352, 353, 354, 355, - 356, 357, 358, 359, 360, -1, 362, 363, 364, 365, + 356, 357, 358, 359, 360, -1, 362, 363, -1, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, -1, -1, 384, 385, - 386, 387, 388, 389, 390, 391, 392, -1, 394, 395, + 386, 387, 388, 389, 390, 391, 392, -1, -1, 395, 396, 397, 398, -1, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, -1, - -1, 417, 418, -1, 420, 421, 422, 423, 424, 425, + -1, 417, 418, -1, 420, -1, 422, 423, 424, 425, 426, -1, 428, 429, 430, -1, -1, 433, 434, 435, 436, 437, -1, 439, 440, 441, 442, 443, 444, 445, 446, -1, -1, 449, 450, 451, -1, 453, 454, 455, 456, -1, 458, 459, 460, 461, 462, 463, 464, 465, - -1, 467, 468, 469, 470, 471, 472, 473, 474, 475, + -1, 467, -1, 469, 470, 471, 472, 473, 474, 475, -1, -1, 478, -1, -1, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, - 496, 497, 498, 499, 500, 501, 3, -1, -1, -1, + 496, 497, 498, 499, 500, 501, 3, -1, 5, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 22, 23, 24, 25, 26, - 27, 28, 29, -1, 31, 32, 33, -1, -1, -1, + 27, 28, 29, 30, 31, 32, 33, -1, -1, -1, -1, -1, -1, -1, -1, -1, 43, 44, -1, 46, 47, 48, -1, 50, 51, 52, 53, 54, -1, 56, 57, -1, 59, 60, 61, 62, 63, 64, -1, -1, - 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, - 77, 78, 79, -1, -1, 82, 83, 84, 85, 86, - 87, 88, -1, 90, 91, 92, 93, 94, 95, 96, + 67, 68, 69, 70, 71, 72, 73, -1, 75, 76, + 77, 78, 79, -1, -1, -1, 83, 84, 85, 86, + 87, 88, -1, 90, 91, 92, -1, 94, 95, 96, 97, 98, 99, -1, -1, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, -1, 118, -1, 120, 121, 122, 123, 124, 125, -1, @@ -17121,7 +17273,7 @@ static const yytype_int16 yycheck[] = 137, 138, -1, 140, 141, 142, -1, 144, 145, 146, -1, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, -1, 161, -1, 163, 164, 165, 166, - -1, 168, 169, 170, -1, -1, -1, 174, 175, 176, + -1, 168, -1, 170, -1, -1, -1, 174, 175, 176, -1, 178, -1, 180, -1, 182, 183, 184, 185, -1, 187, 188, 189, 190, 191, 192, 193, -1, 195, 196, 197, 198, -1, 200, 201, 202, 203, 204, 205, 206, @@ -17137,7 +17289,7 @@ static const yytype_int16 yycheck[] = 297, 298, 299, -1, 301, -1, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, -1, -1, -1, -1, 319, 320, 321, -1, 323, 324, 325, 326, - 327, 328, 329, 330, 331, 332, 333, 334, 335, -1, + 327, 328, -1, 330, 331, 332, 333, 334, 335, -1, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, -1, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, -1, 362, 363, -1, 365, 366, @@ -17149,21 +17301,21 @@ static const yytype_int16 yycheck[] = 417, 418, -1, 420, -1, 422, 423, 424, 425, 426, -1, 428, 429, 430, -1, -1, 433, 434, 435, 436, 437, -1, 439, 440, 441, 442, 443, 444, 445, 446, - -1, 448, 449, 450, 451, -1, 453, 454, 455, 456, + -1, -1, 449, 450, 451, -1, 453, 454, 455, 456, -1, 458, 459, 460, 461, 462, 463, 464, 465, -1, 467, -1, 469, 470, 471, 472, 473, 474, 475, -1, -1, 478, -1, -1, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, - 497, 498, 499, 500, 501, 3, -1, -1, -1, -1, + 497, 498, 499, 500, 501, 3, -1, 5, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 22, 23, 24, 25, 26, 27, 28, 29, -1, 31, 32, 33, -1, -1, -1, -1, -1, -1, -1, -1, -1, 43, 44, -1, 46, 47, 48, -1, 50, 51, 52, 53, 54, -1, 56, 57, -1, 59, 60, 61, 62, 63, 64, -1, -1, 67, - 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, + 68, 69, 70, 71, 72, 73, -1, 75, 76, 77, 78, 79, -1, -1, -1, 83, 84, 85, 86, 87, - 88, -1, 90, 91, 92, 93, 94, 95, 96, 97, + 88, -1, 90, 91, 92, -1, 94, 95, 96, 97, 98, 99, -1, -1, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, -1, 118, -1, 120, 121, 122, 123, 124, 125, -1, -1, @@ -17171,23 +17323,23 @@ static const yytype_int16 yycheck[] = 138, -1, 140, 141, 142, -1, 144, 145, 146, -1, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, -1, 161, -1, 163, 164, 165, 166, -1, - 168, 169, 170, -1, -1, -1, 174, 175, 176, -1, + 168, -1, 170, -1, -1, -1, 174, 175, 176, -1, 178, -1, 180, -1, 182, 183, 184, 185, -1, 187, 188, 189, 190, 191, 192, 193, -1, 195, 196, 197, 198, -1, 200, 201, 202, 203, 204, 205, 206, -1, 208, -1, 210, 211, 212, 213, 214, 215, 216, 217, -1, 219, -1, 221, -1, -1, 224, -1, 226, 227, - 228, 229, 230, 231, -1, -1, 234, -1, 236, 237, + 228, 229, 230, 231, -1, -1, 234, -1, 236, -1, -1, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, -1, 270, 271, 272, 273, 274, -1, 276, 277, -1, 279, -1, 281, 282, 283, 284, 285, 286, -1, - 288, 289, -1, -1, 292, 293, 294, -1, -1, 297, + 288, 289, -1, 291, 292, 293, 294, -1, -1, 297, 298, 299, -1, 301, -1, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, -1, -1, -1, -1, 319, 320, 321, -1, 323, 324, 325, 326, 327, - 328, 329, 330, 331, 332, 333, 334, 335, -1, 337, + 328, -1, 330, 331, 332, 333, 334, 335, -1, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, -1, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, -1, 362, 363, -1, 365, 366, 367, @@ -17199,7 +17351,7 @@ static const yytype_int16 yycheck[] = 418, -1, 420, -1, 422, 423, 424, 425, 426, -1, 428, 429, 430, -1, -1, 433, 434, 435, 436, 437, -1, 439, 440, 441, 442, 443, 444, 445, 446, -1, - 448, 449, 450, 451, -1, 453, 454, 455, 456, -1, + -1, 449, 450, 451, -1, 453, 454, 455, 456, -1, 458, 459, 460, 461, 462, 463, 464, 465, -1, 467, -1, 469, 470, 471, 472, 473, 474, 475, -1, -1, 478, -1, -1, 481, 482, 483, 484, 485, 486, 487, @@ -17207,7 +17359,7 @@ static const yytype_int16 yycheck[] = 498, 499, 500, 501, 3, -1, 5, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 22, 23, 24, 25, 26, 27, 28, - 29, -1, 31, 32, 33, 34, 35, -1, -1, -1, + 29, -1, 31, 32, 33, -1, -1, -1, -1, -1, -1, -1, -1, -1, 43, 44, -1, 46, 47, 48, -1, 50, 51, 52, 53, 54, -1, 56, 57, -1, 59, 60, 61, 62, 63, 64, -1, -1, 67, 68, @@ -17233,7 +17385,7 @@ static const yytype_int16 yycheck[] = 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, -1, 270, 271, 272, 273, 274, -1, 276, 277, -1, 279, -1, 281, 282, 283, 284, 285, 286, -1, 288, - 289, -1, -1, 292, 293, 294, -1, -1, 297, 298, + 289, -1, 291, 292, 293, 294, -1, -1, 297, 298, 299, -1, 301, -1, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, -1, -1, -1, -1, 319, 320, 321, -1, 323, 324, 325, 326, 327, 328, @@ -17382,7 +17534,7 @@ static const yytype_int16 yycheck[] = 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, -1, 270, 271, 272, 273, 274, -1, 276, 277, -1, 279, -1, 281, - 282, 283, 284, 285, 286, -1, 288, 289, -1, 291, + 282, 283, 284, 285, 286, -1, 288, 289, -1, -1, 292, 293, 294, -1, -1, 297, 298, 299, -1, 301, -1, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, -1, -1, -1, -1, 319, 320, 321, @@ -17395,7 +17547,7 @@ static const yytype_int16 yycheck[] = -1, -1, 384, 385, 386, 387, 388, 389, 390, 391, 392, -1, -1, 395, 396, 397, 398, -1, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, - 412, 413, 414, -1, -1, 417, 418, -1, 420, -1, + 412, 413, 414, -1, -1, 417, 418, 419, 420, -1, 422, 423, 424, 425, 426, -1, 428, 429, 430, -1, -1, 433, 434, 435, 436, 437, -1, 439, 440, 441, 442, 443, 444, 445, 446, -1, -1, 449, 450, 451, @@ -17406,7 +17558,7 @@ static const yytype_int16 yycheck[] = 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, 3, -1, 5, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 22, - 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, + 23, 24, 25, 26, 27, 28, 29, -1, 31, 32, 33, -1, -1, -1, -1, -1, -1, -1, -1, -1, 43, 44, -1, 46, 47, 48, -1, 50, 51, 52, 53, 54, -1, 56, 57, -1, 59, 60, 61, 62, @@ -17482,7 +17634,7 @@ static const yytype_int16 yycheck[] = 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, -1, 270, 271, 272, 273, 274, -1, 276, 277, -1, 279, -1, 281, 282, 283, - 284, 285, 286, -1, 288, 289, -1, 291, 292, 293, + 284, 285, 286, -1, 288, 289, -1, -1, 292, 293, 294, -1, -1, 297, 298, 299, -1, 301, -1, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, -1, -1, -1, -1, 319, 320, 321, -1, 323, @@ -17504,9 +17656,9 @@ static const yytype_int16 yycheck[] = 474, 475, -1, -1, 478, -1, -1, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, 3, -1, - 5, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 22, 23, 24, - 25, 26, 27, 28, 29, -1, 31, 32, 33, -1, + 25, 26, 27, 28, 29, 30, 31, 32, 33, -1, -1, -1, -1, -1, -1, -1, -1, -1, 43, 44, -1, 46, 47, 48, -1, 50, 51, 52, 53, 54, -1, 56, 57, -1, 59, 60, 61, 62, 63, 64, @@ -17545,7 +17697,7 @@ static const yytype_int16 yycheck[] = 385, 386, 387, 388, 389, 390, 391, 392, -1, -1, 395, 396, 397, 398, -1, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, - -1, -1, 417, 418, 419, 420, -1, 422, 423, 424, + -1, -1, 417, 418, -1, 420, -1, 422, 423, 424, 425, 426, -1, 428, 429, 430, -1, -1, 433, 434, 435, 436, 437, -1, 439, 440, 441, 442, 443, 444, 445, 446, -1, -1, 449, 450, 451, -1, 453, 454, @@ -17653,10 +17805,10 @@ static const yytype_int16 yycheck[] = 467, -1, 469, 470, 471, 472, 473, 474, 475, -1, -1, 478, -1, -1, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, - 497, 498, 499, 500, 501, 3, -1, -1, -1, -1, + 497, 498, 499, 500, 501, 3, -1, 5, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 22, 23, 24, 25, 26, 27, - 28, 29, 30, 31, 32, 33, -1, -1, -1, -1, + 28, 29, -1, 31, 32, 33, -1, -1, -1, -1, -1, -1, -1, -1, -1, 43, 44, -1, 46, 47, 48, -1, 50, 51, 52, 53, 54, -1, 56, 57, -1, 59, 60, 61, 62, 63, 64, -1, -1, 67, @@ -17903,10 +18055,10 @@ static const yytype_int16 yycheck[] = 472, 473, 474, 475, -1, -1, 478, -1, -1, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, - 3, -1, 5, -1, -1, -1, -1, -1, -1, -1, + 3, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 22, 23, 24, 25, 26, 27, 28, 29, -1, 31, 32, - 33, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 33, -1, -1, -1, -1, -1, -1, 40, -1, -1, 43, 44, -1, 46, 47, 48, -1, 50, 51, 52, 53, 54, -1, 56, 57, -1, 59, 60, 61, 62, 63, 64, -1, -1, 67, 68, 69, 70, 71, 72, @@ -17953,10 +18105,10 @@ static const yytype_int16 yycheck[] = 473, 474, 475, -1, -1, 478, -1, -1, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, 3, - -1, 5, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 22, 23, 24, 25, 26, 27, 28, 29, -1, 31, 32, 33, - -1, -1, -1, -1, -1, -1, -1, -1, -1, 43, + -1, -1, -1, -1, -1, -1, 40, -1, -1, 43, 44, -1, 46, 47, 48, -1, 50, 51, 52, 53, 54, -1, 56, 57, -1, 59, 60, 61, 62, 63, 64, -1, -1, 67, 68, 69, 70, 71, 72, 73, @@ -18003,9 +18155,9 @@ static const yytype_int16 yycheck[] = 474, 475, -1, -1, 478, -1, -1, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, 3, -1, - 5, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 22, 23, 24, - 25, 26, 27, 28, 29, -1, 31, 32, 33, -1, + 25, 26, 27, 28, 29, 30, 31, 32, 33, -1, -1, -1, -1, -1, -1, -1, -1, -1, 43, 44, -1, 46, 47, 48, -1, 50, 51, 52, 53, 54, -1, 56, 57, -1, 59, 60, 61, 62, 63, 64, @@ -18052,11 +18204,11 @@ static const yytype_int16 yycheck[] = 465, -1, 467, -1, 469, 470, 471, 472, 473, 474, 475, -1, -1, 478, -1, -1, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, - 495, 496, 497, 498, 499, 500, 501, 3, -1, -1, + 495, 496, 497, 498, 499, 500, 501, 3, -1, 5, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 22, 23, 24, 25, 26, 27, 28, 29, -1, 31, 32, 33, -1, -1, - -1, -1, -1, -1, 40, -1, -1, 43, 44, -1, + -1, -1, -1, -1, -1, -1, -1, 43, 44, -1, 46, 47, 48, -1, 50, 51, 52, 53, 54, -1, 56, 57, -1, 59, 60, 61, 62, 63, 64, -1, -1, 67, 68, 69, 70, 71, 72, 73, -1, 75, @@ -18102,11 +18254,259 @@ static const yytype_int16 yycheck[] = -1, 467, -1, 469, 470, 471, 472, 473, 474, 475, -1, -1, 478, -1, -1, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, - 496, 497, 498, 499, 500, 501, 3, -1, -1, -1, + 496, 497, 498, 499, 500, 501, 3, -1, 5, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 22, 23, 24, 25, 26, 27, 28, 29, -1, 31, 32, 33, -1, -1, -1, - -1, -1, -1, 40, -1, -1, 43, 44, -1, 46, + -1, -1, -1, -1, -1, -1, 43, 44, -1, 46, + 47, 48, -1, 50, 51, 52, 53, 54, -1, 56, + 57, -1, 59, 60, 61, 62, 63, 64, -1, -1, + 67, 68, 69, 70, 71, 72, 73, -1, 75, 76, + 77, 78, 79, -1, -1, -1, 83, 84, 85, 86, + 87, 88, -1, 90, 91, 92, -1, 94, 95, 96, + 97, 98, 99, -1, -1, 102, 103, 104, 105, 106, + 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, + -1, 118, -1, 120, 121, 122, 123, 124, 125, -1, + -1, 128, 129, 130, 131, -1, -1, 134, 135, 136, + 137, 138, -1, 140, 141, 142, -1, 144, 145, 146, + -1, 148, 149, 150, 151, 152, 153, 154, 155, 156, + 157, 158, 159, -1, 161, -1, 163, 164, 165, 166, + -1, 168, -1, 170, -1, -1, -1, 174, 175, 176, + -1, 178, -1, 180, -1, 182, 183, 184, 185, -1, + 187, 188, 189, 190, 191, 192, 193, -1, 195, 196, + 197, 198, -1, 200, 201, 202, 203, 204, 205, 206, + -1, 208, -1, 210, 211, 212, 213, 214, 215, 216, + 217, -1, 219, -1, 221, -1, -1, 224, -1, 226, + 227, 228, 229, 230, 231, -1, -1, 234, -1, 236, + -1, -1, 239, 240, 241, 242, 243, 244, 245, 246, + 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, + 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, + 267, 268, -1, 270, 271, 272, 273, 274, -1, 276, + 277, -1, 279, -1, 281, 282, 283, 284, 285, 286, + -1, 288, 289, -1, -1, 292, 293, 294, -1, -1, + 297, 298, 299, -1, 301, -1, 303, 304, 305, 306, + 307, 308, 309, 310, 311, 312, 313, 314, -1, -1, + -1, -1, 319, 320, 321, -1, 323, 324, 325, 326, + 327, 328, -1, 330, 331, 332, 333, 334, 335, -1, + 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, + -1, 348, 349, 350, 351, 352, 353, 354, 355, 356, + 357, 358, 359, 360, -1, 362, 363, -1, 365, 366, + 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, + 377, 378, 379, 380, 381, -1, -1, 384, 385, 386, + 387, 388, 389, 390, 391, 392, -1, -1, 395, 396, + 397, 398, -1, 400, 401, 402, 403, 404, 405, 406, + 407, 408, 409, 410, 411, 412, 413, 414, -1, -1, + 417, 418, -1, 420, -1, 422, 423, 424, 425, 426, + -1, 428, 429, 430, -1, -1, 433, 434, 435, 436, + 437, -1, 439, 440, 441, 442, 443, 444, 445, 446, + -1, -1, 449, 450, 451, -1, 453, 454, 455, 456, + -1, 458, 459, 460, 461, 462, 463, 464, 465, -1, + 467, -1, 469, 470, 471, 472, 473, 474, 475, -1, + -1, 478, -1, -1, 481, 482, 483, 484, 485, 486, + 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, + 497, 498, 499, 500, 501, 3, -1, 5, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 22, 23, 24, 25, 26, 27, + 28, 29, -1, 31, 32, 33, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 43, 44, -1, 46, 47, + 48, -1, 50, 51, 52, 53, 54, -1, 56, 57, + -1, 59, 60, 61, 62, 63, 64, -1, -1, 67, + 68, 69, 70, 71, 72, 73, -1, 75, 76, 77, + 78, 79, -1, -1, -1, 83, 84, 85, 86, 87, + 88, -1, 90, 91, 92, -1, 94, 95, 96, 97, + 98, 99, -1, -1, 102, 103, 104, 105, 106, 107, + 108, 109, 110, 111, 112, 113, 114, 115, 116, -1, + 118, -1, 120, 121, 122, 123, 124, 125, -1, -1, + 128, 129, 130, 131, -1, -1, 134, 135, 136, 137, + 138, -1, 140, 141, 142, -1, 144, 145, 146, -1, + 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, + 158, 159, -1, 161, -1, 163, 164, 165, 166, -1, + 168, -1, 170, -1, -1, -1, 174, 175, 176, -1, + 178, -1, 180, -1, 182, 183, 184, 185, -1, 187, + 188, 189, 190, 191, 192, 193, -1, 195, 196, 197, + 198, -1, 200, 201, 202, 203, 204, 205, 206, -1, + 208, -1, 210, 211, 212, 213, 214, 215, 216, 217, + -1, 219, -1, 221, -1, -1, 224, -1, 226, 227, + 228, 229, 230, 231, -1, -1, 234, -1, 236, -1, + -1, 239, 240, 241, 242, 243, 244, 245, 246, 247, + 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, + 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, + 268, -1, 270, 271, 272, 273, 274, -1, 276, 277, + -1, 279, -1, 281, 282, 283, 284, 285, 286, -1, + 288, 289, -1, -1, 292, 293, 294, -1, -1, 297, + 298, 299, -1, 301, -1, 303, 304, 305, 306, 307, + 308, 309, 310, 311, 312, 313, 314, -1, -1, -1, + -1, 319, 320, 321, -1, 323, 324, 325, 326, 327, + 328, -1, 330, 331, 332, 333, 334, 335, -1, 337, + 338, 339, 340, 341, 342, 343, 344, 345, 346, -1, + 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, + 358, 359, 360, -1, 362, 363, -1, 365, 366, 367, + 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, + 378, 379, 380, 381, -1, -1, 384, 385, 386, 387, + 388, 389, 390, 391, 392, -1, -1, 395, 396, 397, + 398, -1, 400, 401, 402, 403, 404, 405, 406, 407, + 408, 409, 410, 411, 412, 413, 414, -1, -1, 417, + 418, -1, 420, -1, 422, 423, 424, 425, 426, -1, + 428, 429, 430, -1, -1, 433, 434, 435, 436, 437, + -1, 439, 440, 441, 442, 443, 444, 445, 446, -1, + -1, 449, 450, 451, -1, 453, 454, 455, 456, -1, + 458, 459, 460, 461, 462, 463, 464, 465, -1, 467, + -1, 469, 470, 471, 472, 473, 474, 475, -1, -1, + 478, -1, -1, 481, 482, 483, 484, 485, 486, 487, + 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, + 498, 499, 500, 501, 3, -1, 5, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, 22, 23, 24, 25, 26, 27, 28, + 29, -1, 31, 32, 33, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 43, 44, -1, 46, 47, 48, + -1, 50, 51, 52, 53, 54, -1, 56, 57, -1, + 59, 60, 61, 62, 63, 64, -1, -1, 67, 68, + 69, 70, 71, 72, 73, -1, 75, 76, 77, 78, + 79, -1, -1, -1, 83, 84, 85, 86, 87, 88, + -1, 90, 91, 92, -1, 94, 95, 96, 97, 98, + 99, -1, -1, 102, 103, 104, 105, 106, 107, 108, + 109, 110, 111, 112, 113, 114, 115, 116, -1, 118, + -1, 120, 121, 122, 123, 124, 125, -1, -1, 128, + 129, 130, 131, -1, -1, 134, 135, 136, 137, 138, + -1, 140, 141, 142, -1, 144, 145, 146, -1, 148, + 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, + 159, -1, 161, -1, 163, 164, 165, 166, -1, 168, + -1, 170, -1, -1, -1, 174, 175, 176, -1, 178, + -1, 180, -1, 182, 183, 184, 185, -1, 187, 188, + 189, 190, 191, 192, 193, -1, 195, 196, 197, 198, + -1, 200, 201, 202, 203, 204, 205, 206, -1, 208, + -1, 210, 211, 212, 213, 214, 215, 216, 217, -1, + 219, -1, 221, -1, -1, 224, -1, 226, 227, 228, + 229, 230, 231, -1, -1, 234, -1, 236, -1, -1, + 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, + 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, + 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, + -1, 270, 271, 272, 273, 274, -1, 276, 277, -1, + 279, -1, 281, 282, 283, 284, 285, 286, -1, 288, + 289, -1, -1, 292, 293, 294, -1, -1, 297, 298, + 299, -1, 301, -1, 303, 304, 305, 306, 307, 308, + 309, 310, 311, 312, 313, 314, -1, -1, -1, -1, + 319, 320, 321, -1, 323, 324, 325, 326, 327, 328, + -1, 330, 331, 332, 333, 334, 335, -1, 337, 338, + 339, 340, 341, 342, 343, 344, 345, 346, -1, 348, + 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, + 359, 360, -1, 362, 363, -1, 365, 366, 367, 368, + 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, + 379, 380, 381, -1, -1, 384, 385, 386, 387, 388, + 389, 390, 391, 392, -1, -1, 395, 396, 397, 398, + -1, 400, 401, 402, 403, 404, 405, 406, 407, 408, + 409, 410, 411, 412, 413, 414, -1, -1, 417, 418, + -1, 420, -1, 422, 423, 424, 425, 426, -1, 428, + 429, 430, -1, -1, 433, 434, 435, 436, 437, -1, + 439, 440, 441, 442, 443, 444, 445, 446, -1, -1, + 449, 450, 451, -1, 453, 454, 455, 456, -1, 458, + 459, 460, 461, 462, 463, 464, 465, -1, 467, -1, + 469, 470, 471, 472, 473, 474, 475, -1, -1, 478, + -1, -1, 481, 482, 483, 484, 485, 486, 487, 488, + 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, + 499, 500, 501, 3, -1, 5, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, 22, 23, 24, 25, 26, 27, 28, 29, + -1, 31, 32, 33, -1, -1, -1, -1, -1, -1, + -1, -1, -1, 43, 44, -1, 46, 47, 48, -1, + 50, 51, 52, 53, 54, -1, 56, 57, -1, 59, + 60, 61, 62, 63, 64, -1, -1, 67, 68, 69, + 70, 71, 72, 73, -1, 75, 76, 77, 78, 79, + -1, -1, -1, 83, 84, 85, 86, 87, 88, -1, + 90, 91, 92, -1, 94, 95, 96, 97, 98, 99, + -1, -1, 102, 103, 104, 105, 106, 107, 108, 109, + 110, 111, 112, 113, 114, 115, 116, -1, 118, -1, + 120, 121, 122, 123, 124, 125, -1, -1, 128, 129, + 130, 131, -1, -1, 134, 135, 136, 137, 138, -1, + 140, 141, 142, -1, 144, 145, 146, -1, 148, 149, + 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, + -1, 161, -1, 163, 164, 165, 166, -1, 168, -1, + 170, -1, -1, -1, 174, 175, 176, -1, 178, -1, + 180, -1, 182, 183, 184, 185, -1, 187, 188, 189, + 190, 191, 192, 193, -1, 195, 196, 197, 198, -1, + 200, 201, 202, 203, 204, 205, 206, -1, 208, -1, + 210, 211, 212, 213, 214, 215, 216, 217, -1, 219, + -1, 221, -1, -1, 224, -1, 226, 227, 228, 229, + 230, 231, -1, -1, 234, -1, 236, -1, -1, 239, + 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, + 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, + 260, 261, 262, 263, 264, 265, 266, 267, 268, -1, + 270, 271, 272, 273, 274, -1, 276, 277, -1, 279, + -1, 281, 282, 283, 284, 285, 286, -1, 288, 289, + -1, -1, 292, 293, 294, -1, -1, 297, 298, 299, + -1, 301, -1, 303, 304, 305, 306, 307, 308, 309, + 310, 311, 312, 313, 314, -1, -1, -1, -1, 319, + 320, 321, -1, 323, 324, 325, 326, 327, 328, -1, + 330, 331, 332, 333, 334, 335, -1, 337, 338, 339, + 340, 341, 342, 343, 344, 345, 346, -1, 348, 349, + 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, + 360, -1, 362, 363, -1, 365, 366, 367, 368, 369, + 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, + 380, 381, -1, -1, 384, 385, 386, 387, 388, 389, + 390, 391, 392, -1, -1, 395, 396, 397, 398, -1, + 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, + 410, 411, 412, 413, 414, -1, -1, 417, 418, -1, + 420, -1, 422, 423, 424, 425, 426, -1, 428, 429, + 430, -1, -1, 433, 434, 435, 436, 437, -1, 439, + 440, 441, 442, 443, 444, 445, 446, -1, -1, 449, + 450, 451, -1, 453, 454, 455, 456, -1, 458, 459, + 460, 461, 462, 463, 464, 465, -1, 467, -1, 469, + 470, 471, 472, 473, 474, 475, -1, -1, 478, -1, + -1, 481, 482, 483, 484, 485, 486, 487, 488, 489, + 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, + 500, 501, 3, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, 22, 23, 24, 25, 26, 27, 28, 29, -1, + 31, 32, 33, -1, -1, -1, 37, -1, -1, 40, + -1, 42, 43, 44, -1, 46, 47, 48, 49, 50, + 51, 52, -1, 54, 55, 56, 57, -1, 59, 60, + 61, 62, 63, 64, -1, -1, 67, 68, 69, 70, + 71, 72, 73, -1, 75, 76, 77, 78, -1, -1, + 81, -1, 83, 84, 85, 86, 87, 88, 89, 90, + 91, 92, -1, 94, 95, 96, 97, 98, 99, -1, + 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, + 111, 112, 113, 114, 115, 116, -1, 118, -1, 120, + 121, 122, 123, 124, 125, -1, -1, 128, 129, 130, + 131, -1, -1, 134, 135, 136, 137, 138, -1, 140, + 141, 142, -1, 144, 145, 146, -1, 148, 149, 150, + 151, -1, 153, 154, 155, 156, 157, 158, -1, -1, + 161, -1, 163, 164, 165, 166, -1, 168, -1, 170, + 171, -1, 173, 174, 175, 176, 177, 178, -1, 180, + -1, -1, -1, 184, 185, -1, 187, 188, 189, 190, + 191, 192, 193, 194, 195, 196, 197, 198, -1, 200, + 201, 202, 203, 204, 205, 206, -1, 208, 209, -1, + 211, 212, 213, 214, 215, 216, 217, -1, 219, -1, + 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, + 231, -1, -1, 234, 235, 236, 237, -1, 239, 240, + 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, + 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, + 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, + 271, 272, 273, -1, -1, 276, 277, 278, 279, -1, + -1, 282, 283, 284, 285, 286, -1, 288, 289, -1, + -1, 292, 293, 294, -1, -1, 297, 298, -1, 300, + 301, 302, -1, 304, 305, 306, 307, 308, 309, 310, + 311, 312, 313, 314, -1, -1, -1, -1, 319, 320, + -1, 322, 323, 324, -1, 326, 327, 328, -1, 330, + 331, 332, 333, 334, 335, -1, 337, 338, 339, 340, + 341, 342, 343, 344, 345, 346, -1, 348, 349, 350, + 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, + -1, 362, 363, 364, 365, 366, 367, 368, 369, 370, + 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, + 381, -1, 383, 384, 385, 386, 387, 388, 389, 390, + 391, 392, -1, 394, 395, 396, 397, 398, -1, 400, + 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, + 411, 412, 413, -1, -1, -1, 417, 418, -1, 420, + 421, 422, 423, 424, 425, 426, -1, 428, 429, 430, + -1, -1, 433, 434, -1, 436, -1, -1, 439, 440, + 441, 442, 443, 444, 445, 446, 447, -1, 449, 450, + 451, -1, 453, 454, 455, 456, -1, 458, 459, 460, + 461, 462, -1, 464, 465, -1, 467, 468, 469, 470, + 471, 472, 473, 474, 475, -1, -1, 478, -1, -1, + 481, 482, 483, 484, 485, 486, 3, -1, 5, -1, + -1, -1, -1, -1, -1, -1, -1, 498, 499, 500, + 501, -1, -1, -1, -1, 22, 23, 24, 25, 26, + 27, 28, 29, -1, 31, 32, 33, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 43, 44, -1, 46, 47, 48, -1, 50, 51, 52, 53, 54, -1, 56, 57, -1, 59, 60, 61, 62, 63, 64, -1, -1, 67, 68, 69, 70, 71, 72, 73, -1, 75, 76, @@ -18155,7 +18555,7 @@ static const yytype_int16 yycheck[] = 497, 498, 499, 500, 501, 3, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 22, 23, 24, 25, 26, 27, - 28, 29, 30, 31, 32, 33, -1, -1, -1, -1, + 28, 29, -1, 31, 32, 33, -1, -1, -1, -1, -1, -1, -1, -1, -1, 43, 44, -1, 46, 47, 48, -1, 50, 51, 52, 53, 54, -1, 56, 57, -1, 59, 60, 61, 62, 63, 64, -1, -1, 67, @@ -18202,7 +18602,7 @@ static const yytype_int16 yycheck[] = -1, 469, 470, 471, 472, 473, 474, 475, -1, -1, 478, -1, -1, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, - 498, 499, 500, 501, 3, -1, 5, -1, -1, -1, + 498, 499, 500, 501, 3, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 22, 23, 24, 25, 26, 27, 28, 29, -1, 31, 32, 33, -1, -1, -1, -1, -1, @@ -18220,288 +18620,40 @@ static const yytype_int16 yycheck[] = 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, -1, 161, -1, 163, 164, 165, 166, -1, 168, -1, 170, -1, -1, -1, 174, 175, 176, -1, 178, - -1, 180, -1, 182, 183, 184, 185, -1, 187, 188, - 189, 190, 191, 192, 193, -1, 195, 196, 197, 198, - -1, 200, 201, 202, 203, 204, 205, 206, -1, 208, - -1, 210, 211, 212, 213, 214, 215, 216, 217, -1, - 219, -1, 221, -1, -1, 224, -1, 226, 227, 228, - 229, 230, 231, -1, -1, 234, -1, 236, -1, -1, - 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, - 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, - 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, - -1, 270, 271, 272, 273, 274, -1, 276, 277, -1, - 279, -1, 281, 282, 283, 284, 285, 286, -1, 288, - 289, -1, -1, 292, 293, 294, -1, -1, 297, 298, - 299, -1, 301, -1, 303, 304, 305, 306, 307, 308, - 309, 310, 311, 312, 313, 314, -1, -1, -1, -1, - 319, 320, 321, -1, 323, 324, 325, 326, 327, 328, - -1, 330, 331, 332, 333, 334, 335, -1, 337, 338, - 339, 340, 341, 342, 343, 344, 345, 346, -1, 348, - 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, - 359, 360, -1, 362, 363, -1, 365, 366, 367, 368, - 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, - 379, 380, 381, -1, -1, 384, 385, 386, 387, 388, - 389, 390, 391, 392, -1, -1, 395, 396, 397, 398, - -1, 400, 401, 402, 403, 404, 405, 406, 407, 408, - 409, 410, 411, 412, 413, 414, -1, -1, 417, 418, - -1, 420, -1, 422, 423, 424, 425, 426, -1, 428, - 429, 430, -1, -1, 433, 434, 435, 436, 437, -1, - 439, 440, 441, 442, 443, 444, 445, 446, -1, -1, - 449, 450, 451, -1, 453, 454, 455, 456, -1, 458, - 459, 460, 461, 462, 463, 464, 465, -1, 467, -1, - 469, 470, 471, 472, 473, 474, 475, -1, -1, 478, - -1, -1, 481, 482, 483, 484, 485, 486, 487, 488, - 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, - 499, 500, 501, 3, -1, 5, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, 22, 23, 24, 25, 26, 27, 28, 29, - -1, 31, 32, 33, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 43, 44, -1, 46, 47, 48, -1, - 50, 51, 52, 53, 54, -1, 56, 57, -1, 59, - 60, 61, 62, 63, 64, -1, -1, 67, 68, 69, - 70, 71, 72, 73, -1, 75, 76, 77, 78, 79, - -1, -1, -1, 83, 84, 85, 86, 87, 88, -1, - 90, 91, 92, -1, 94, 95, 96, 97, 98, 99, - -1, -1, 102, 103, 104, 105, 106, 107, 108, 109, - 110, 111, 112, 113, 114, 115, 116, -1, 118, -1, - 120, 121, 122, 123, 124, 125, -1, -1, 128, 129, - 130, 131, -1, -1, 134, 135, 136, 137, 138, -1, - 140, 141, 142, -1, 144, 145, 146, -1, 148, 149, - 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, - -1, 161, -1, 163, 164, 165, 166, -1, 168, -1, - 170, -1, -1, -1, 174, 175, 176, -1, 178, -1, - 180, -1, 182, 183, 184, 185, -1, 187, 188, 189, - 190, 191, 192, 193, -1, 195, 196, 197, 198, -1, - 200, 201, 202, 203, 204, 205, 206, -1, 208, -1, - 210, 211, 212, 213, 214, 215, 216, 217, -1, 219, - -1, 221, -1, -1, 224, -1, 226, 227, 228, 229, - 230, 231, -1, -1, 234, -1, 236, -1, -1, 239, - 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, - 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, - 260, 261, 262, 263, 264, 265, 266, 267, 268, -1, - 270, 271, 272, 273, 274, -1, 276, 277, -1, 279, - -1, 281, 282, 283, 284, 285, 286, -1, 288, 289, - -1, -1, 292, 293, 294, -1, -1, 297, 298, 299, - -1, 301, -1, 303, 304, 305, 306, 307, 308, 309, - 310, 311, 312, 313, 314, -1, -1, -1, -1, 319, - 320, 321, -1, 323, 324, 325, 326, 327, 328, -1, - 330, 331, 332, 333, 334, 335, -1, 337, 338, 339, - 340, 341, 342, 343, 344, 345, 346, -1, 348, 349, - 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, - 360, -1, 362, 363, -1, 365, 366, 367, 368, 369, - 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, - 380, 381, -1, -1, 384, 385, 386, 387, 388, 389, - 390, 391, 392, -1, -1, 395, 396, 397, 398, -1, - 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, - 410, 411, 412, 413, 414, -1, -1, 417, 418, -1, - 420, -1, 422, 423, 424, 425, 426, -1, 428, 429, - 430, -1, -1, 433, 434, 435, 436, 437, -1, 439, - 440, 441, 442, 443, 444, 445, 446, -1, -1, 449, - 450, 451, -1, 453, 454, 455, 456, -1, 458, 459, - 460, 461, 462, 463, 464, 465, -1, 467, -1, 469, - 470, 471, 472, 473, 474, 475, -1, -1, 478, -1, - -1, 481, 482, 483, 484, 485, 486, 487, 488, 489, - 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, - 500, 501, 3, -1, 5, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 22, 23, 24, 25, 26, 27, 28, 29, -1, - 31, 32, 33, -1, -1, -1, -1, -1, -1, -1, - -1, -1, 43, 44, -1, 46, 47, 48, -1, 50, - 51, 52, 53, 54, -1, 56, 57, -1, 59, 60, - 61, 62, 63, 64, -1, -1, 67, 68, 69, 70, - 71, 72, 73, -1, 75, 76, 77, 78, 79, -1, - -1, -1, 83, 84, 85, 86, 87, 88, -1, 90, - 91, 92, -1, 94, 95, 96, 97, 98, 99, -1, - -1, 102, 103, 104, 105, 106, 107, 108, 109, 110, - 111, 112, 113, 114, 115, 116, -1, 118, -1, 120, - 121, 122, 123, 124, 125, -1, -1, 128, 129, 130, - 131, -1, -1, 134, 135, 136, 137, 138, -1, 140, - 141, 142, -1, 144, 145, 146, -1, 148, 149, 150, - 151, 152, 153, 154, 155, 156, 157, 158, 159, -1, - 161, -1, 163, 164, 165, 166, -1, 168, -1, 170, - -1, -1, -1, 174, 175, 176, -1, 178, -1, 180, - -1, 182, 183, 184, 185, -1, 187, 188, 189, 190, - 191, 192, 193, -1, 195, 196, 197, 198, -1, 200, - 201, 202, 203, 204, 205, 206, -1, 208, -1, 210, - 211, 212, 213, 214, 215, 216, 217, -1, 219, -1, - 221, -1, -1, 224, -1, 226, 227, 228, 229, 230, - 231, -1, -1, 234, -1, 236, -1, -1, 239, 240, - 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, - 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, - 261, 262, 263, 264, 265, 266, 267, 268, -1, 270, - 271, 272, 273, 274, -1, 276, 277, -1, 279, -1, - 281, 282, 283, 284, 285, 286, -1, 288, 289, -1, - -1, 292, 293, 294, -1, -1, 297, 298, 299, -1, - 301, -1, 303, 304, 305, 306, 307, 308, 309, 310, - 311, 312, 313, 314, -1, -1, -1, -1, 319, 320, - 321, -1, 323, 324, 325, 326, 327, 328, -1, 330, - 331, 332, 333, 334, 335, -1, 337, 338, 339, 340, - 341, 342, 343, 344, 345, 346, -1, 348, 349, 350, - 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, - -1, 362, 363, -1, 365, 366, 367, 368, 369, 370, - 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, - 381, -1, -1, 384, 385, 386, 387, 388, 389, 390, - 391, 392, -1, -1, 395, 396, 397, 398, -1, 400, - 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, - 411, 412, 413, 414, -1, -1, 417, 418, -1, 420, - -1, 422, 423, 424, 425, 426, -1, 428, 429, 430, - -1, -1, 433, 434, 435, 436, 437, -1, 439, 440, - 441, 442, 443, 444, 445, 446, -1, -1, 449, 450, - 451, -1, 453, 454, 455, 456, -1, 458, 459, 460, - 461, 462, 463, 464, 465, -1, 467, -1, 469, 470, - 471, 472, 473, 474, 475, -1, -1, 478, -1, -1, - 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, - 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, - 501, 3, -1, 5, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 22, 23, 24, 25, 26, 27, 28, 29, -1, 31, - 32, 33, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 43, 44, -1, 46, 47, 48, -1, 50, 51, - 52, 53, 54, -1, 56, 57, -1, 59, 60, 61, - 62, 63, 64, -1, -1, 67, 68, 69, 70, 71, - 72, 73, -1, 75, 76, 77, 78, 79, -1, -1, - -1, 83, 84, 85, 86, 87, 88, -1, 90, 91, - 92, -1, 94, 95, 96, 97, 98, 99, -1, -1, - 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, - 112, 113, 114, 115, 116, -1, 118, -1, 120, 121, - 122, 123, 124, 125, -1, -1, 128, 129, 130, 131, - -1, -1, 134, 135, 136, 137, 138, -1, 140, 141, - 142, -1, 144, 145, 146, -1, 148, 149, 150, 151, - 152, 153, 154, 155, 156, 157, 158, 159, -1, 161, - -1, 163, 164, 165, 166, -1, 168, -1, 170, -1, - -1, -1, 174, 175, 176, -1, 178, -1, 180, -1, - 182, 183, 184, 185, -1, 187, 188, 189, 190, 191, - 192, 193, -1, 195, 196, 197, 198, -1, 200, 201, - 202, 203, 204, 205, 206, -1, 208, -1, 210, 211, - 212, 213, 214, 215, 216, 217, -1, 219, -1, 221, - -1, -1, 224, -1, 226, 227, 228, 229, 230, 231, - -1, -1, 234, -1, 236, -1, -1, 239, 240, 241, - 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, - 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, - 262, 263, 264, 265, 266, 267, 268, -1, 270, 271, - 272, 273, 274, -1, 276, 277, -1, 279, -1, 281, - 282, 283, 284, 285, 286, -1, 288, 289, -1, -1, - 292, 293, 294, -1, -1, 297, 298, 299, -1, 301, - -1, 303, 304, 305, 306, 307, 308, 309, 310, 311, - 312, 313, 314, -1, -1, -1, -1, 319, 320, 321, - -1, 323, 324, 325, 326, 327, 328, -1, 330, 331, - 332, 333, 334, 335, -1, 337, 338, 339, 340, 341, - 342, 343, 344, 345, 346, -1, 348, 349, 350, 351, - 352, 353, 354, 355, 356, 357, 358, 359, 360, -1, - 362, 363, -1, 365, 366, 367, 368, 369, 370, 371, - 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, - -1, -1, 384, 385, 386, 387, 388, 389, 390, 391, - 392, -1, -1, 395, 396, 397, 398, -1, 400, 401, - 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, - 412, 413, 414, -1, -1, 417, 418, -1, 420, -1, - 422, 423, 424, 425, 426, -1, 428, 429, 430, -1, - -1, 433, 434, 435, 436, 437, -1, 439, 440, 441, - 442, 443, 444, 445, 446, -1, -1, 449, 450, 451, - -1, 453, 454, 455, 456, -1, 458, 459, 460, 461, - 462, 463, 464, 465, -1, 467, -1, 469, 470, 471, - 472, 473, 474, 475, -1, -1, 478, -1, -1, 481, - 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, - 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, - 3, -1, 5, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, 22, - 23, 24, 25, 26, 27, 28, 29, -1, 31, 32, - 33, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 43, 44, -1, 46, 47, 48, -1, 50, 51, 52, - 53, 54, -1, 56, 57, -1, 59, 60, 61, 62, - 63, 64, -1, -1, 67, 68, 69, 70, 71, 72, - 73, -1, 75, 76, 77, 78, 79, -1, -1, -1, - 83, 84, 85, 86, 87, 88, -1, 90, 91, 92, - -1, 94, 95, 96, 97, 98, 99, -1, -1, 102, - 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, - 113, 114, 115, 116, -1, 118, -1, 120, 121, 122, - 123, 124, 125, -1, -1, 128, 129, 130, 131, -1, - -1, 134, 135, 136, 137, 138, -1, 140, 141, 142, - -1, 144, 145, 146, -1, 148, 149, 150, 151, 152, - 153, 154, 155, 156, 157, 158, 159, -1, 161, -1, - 163, 164, 165, 166, -1, 168, -1, 170, -1, -1, - -1, 174, 175, 176, -1, 178, -1, 180, -1, 182, - 183, 184, 185, -1, 187, 188, 189, 190, 191, 192, - 193, -1, 195, 196, 197, 198, -1, 200, 201, 202, - 203, 204, 205, 206, -1, 208, -1, 210, 211, 212, - 213, 214, 215, 216, 217, -1, 219, -1, 221, -1, - -1, 224, -1, 226, 227, 228, 229, 230, 231, -1, - -1, 234, -1, 236, -1, -1, 239, 240, 241, 242, - 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, - 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, - 263, 264, 265, 266, 267, 268, -1, 270, 271, 272, - 273, 274, -1, 276, 277, -1, 279, -1, 281, 282, - 283, 284, 285, 286, -1, 288, 289, -1, -1, 292, - 293, 294, -1, -1, 297, 298, 299, -1, 301, -1, - 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, - 313, 314, -1, -1, -1, -1, 319, 320, 321, -1, - 323, 324, 325, 326, 327, 328, -1, 330, 331, 332, - 333, 334, 335, -1, 337, 338, 339, 340, 341, 342, - 343, 344, 345, 346, -1, 348, 349, 350, 351, 352, - 353, 354, 355, 356, 357, 358, 359, 360, -1, 362, - 363, -1, 365, 366, 367, 368, 369, 370, 371, 372, - 373, 374, 375, 376, 377, 378, 379, 380, 381, -1, - -1, 384, 385, 386, 387, 388, 389, 390, 391, 392, - -1, -1, 395, 396, 397, 398, -1, 400, 401, 402, - 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, - 413, 414, -1, -1, 417, 418, -1, 420, -1, 422, - 423, 424, 425, 426, -1, 428, 429, 430, -1, -1, - 433, 434, 435, 436, 437, -1, 439, 440, 441, 442, - 443, 444, 445, 446, -1, -1, 449, 450, 451, -1, - 453, 454, 455, 456, -1, 458, 459, 460, 461, 462, - 463, 464, 465, -1, 467, -1, 469, 470, 471, 472, - 473, 474, 475, -1, -1, 478, -1, -1, 481, 482, - 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, - 493, 494, 495, 496, 497, 498, 499, 500, 501, 3, + -1, 180, -1, 182, 183, 184, 185, -1, 187, 188, + 189, 190, 191, 192, 193, -1, 195, 196, 197, 198, + -1, 200, 201, 202, 203, 204, 205, 206, -1, 208, + -1, 210, 211, 212, 213, 214, 215, 216, 217, -1, + 219, -1, 221, -1, -1, 224, -1, 226, 227, 228, + 229, 230, 231, -1, -1, 234, -1, 236, -1, -1, + 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, + 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, + 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, + -1, 270, 271, 272, 273, 274, -1, 276, 277, -1, + 279, -1, 281, 282, 283, 284, 285, 286, -1, 288, + 289, -1, -1, 292, 293, 294, -1, -1, 297, 298, + 299, -1, 301, -1, 303, 304, 305, 306, 307, 308, + 309, 310, 311, 312, 313, 314, -1, -1, -1, -1, + 319, 320, 321, -1, 323, 324, 325, 326, 327, 328, + -1, 330, 331, 332, 333, 334, 335, -1, 337, 338, + 339, 340, 341, 342, 343, 344, 345, 346, -1, 348, + 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, + 359, 360, -1, 362, 363, -1, 365, 366, 367, 368, + 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, + 379, 380, 381, -1, -1, 384, 385, 386, 387, 388, + 389, 390, 391, 392, -1, -1, 395, 396, 397, 398, + -1, 400, 401, 402, 403, 404, 405, 406, 407, 408, + 409, 410, 411, 412, 413, 414, -1, -1, 417, 418, + -1, 420, -1, 422, 423, 424, 425, 426, -1, 428, + 429, 430, -1, -1, 433, 434, 435, 436, 437, -1, + 439, 440, 441, 442, 443, 444, 445, 446, -1, -1, + 449, 450, 451, -1, 453, 454, 455, 456, -1, 458, + 459, 460, 461, 462, 463, 464, 465, -1, 467, -1, + 469, 470, 471, 472, 473, 474, 475, -1, -1, 478, + -1, -1, 481, 482, 483, 484, 485, 486, 487, 488, + 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, + 499, 500, 501, 3, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 22, 23, - 24, 25, 26, 27, 28, 29, -1, 31, 32, 33, - -1, -1, -1, 37, -1, -1, 40, -1, 42, 43, - 44, -1, 46, 47, 48, 49, 50, 51, 52, -1, - 54, 55, 56, 57, -1, 59, 60, 61, 62, 63, - 64, -1, -1, 67, 68, 69, 70, 71, 72, 73, - -1, 75, 76, 77, 78, -1, -1, 81, -1, 83, - 84, 85, 86, 87, 88, 89, 90, 91, 92, -1, - 94, 95, 96, 97, 98, 99, -1, 101, 102, 103, - 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, - 114, 115, 116, -1, 118, -1, 120, 121, 122, 123, - 124, 125, -1, -1, 128, 129, 130, 131, -1, -1, - 134, 135, 136, 137, 138, -1, 140, 141, 142, -1, - 144, 145, 146, -1, 148, 149, 150, 151, -1, 153, - 154, 155, 156, 157, 158, -1, -1, 161, -1, 163, - 164, 165, 166, -1, 168, -1, 170, 171, -1, 173, - 174, 175, 176, 177, 178, -1, 180, -1, -1, -1, - 184, 185, -1, 187, 188, 189, 190, 191, 192, 193, - 194, 195, 196, 197, 198, -1, 200, 201, 202, 203, - 204, 205, 206, -1, 208, 209, -1, 211, 212, 213, - 214, 215, 216, 217, -1, 219, -1, 221, 222, 223, - 224, 225, 226, 227, 228, 229, 230, 231, -1, -1, - 234, 235, 236, 237, -1, 239, 240, 241, 242, 243, - 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, - 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, - 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, - -1, -1, 276, 277, 278, 279, -1, -1, 282, 283, - 284, 285, 286, -1, 288, 289, -1, -1, 292, 293, - 294, -1, -1, 297, 298, -1, 300, 301, 302, -1, - 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, - 314, -1, -1, -1, -1, 319, 320, -1, 322, 323, - 324, -1, 326, 327, 328, -1, 330, 331, 332, 333, - 334, 335, -1, 337, 338, 339, 340, 341, 342, 343, - 344, 345, 346, -1, 348, 349, 350, 351, 352, 353, - 354, 355, 356, 357, 358, 359, 360, -1, 362, 363, - 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, - 374, 375, 376, 377, 378, 379, 380, 381, -1, 383, - 384, 385, 386, 387, 388, 389, 390, 391, 392, -1, - 394, 395, 396, 397, 398, -1, 400, 401, 402, 403, - 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, - -1, -1, -1, 417, 418, -1, 420, 421, 422, 423, - 424, 425, 426, -1, 428, 429, 430, -1, -1, 433, - 434, -1, 436, -1, -1, 439, 440, 441, 442, 443, - 444, 445, 446, 447, -1, 449, 450, 451, -1, 453, - 454, 455, 456, -1, 458, 459, 460, 461, 462, -1, - 464, 465, -1, 467, 468, 469, 470, 471, 472, 473, - 474, 475, -1, -1, 478, -1, -1, 481, 482, 483, - 484, 485, 486, 3, -1, 5, -1, -1, -1, -1, - -1, -1, -1, -1, 498, 499, 500, 501, -1, -1, -1, -1, 22, 23, 24, 25, 26, 27, 28, 29, -1, 31, 32, 33, -1, -1, -1, -1, -1, -1, -1, -1, -1, 43, 44, -1, 46, 47, 48, -1, @@ -18703,7 +18855,7 @@ static const yytype_int16 yycheck[] = -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 22, 23, 24, 25, 26, 27, 28, 29, -1, 31, 32, 33, - -1, -1, -1, -1, -1, -1, -1, -1, -1, 43, + -1, -1, -1, -1, -1, -1, 40, -1, -1, 43, 44, -1, 46, 47, 48, -1, 50, 51, 52, 53, 54, -1, 56, 57, -1, 59, 60, 61, 62, 63, 64, -1, -1, 67, 68, 69, 70, 71, 72, 73, @@ -18738,7 +18890,7 @@ static const yytype_int16 yycheck[] = 354, 355, 356, 357, 358, 359, 360, -1, 362, 363, -1, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, -1, -1, - 384, 385, 386, 387, 388, 389, 390, 391, 392, -1, + 384, 385, 386, 387, 388, -1, 390, 391, 392, -1, -1, 395, 396, 397, 398, -1, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, -1, -1, 417, 418, -1, 420, -1, 422, 423, @@ -18853,7 +19005,7 @@ static const yytype_int16 yycheck[] = -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 22, 23, 24, 25, 26, 27, 28, 29, -1, 31, 32, 33, -1, -1, -1, - -1, -1, -1, 40, -1, -1, 43, 44, -1, 46, + -1, -1, -1, -1, -1, -1, 43, 44, -1, 46, 47, 48, -1, 50, 51, 52, 53, 54, -1, 56, 57, -1, 59, 60, 61, 62, 63, 64, -1, -1, 67, 68, 69, 70, 71, 72, 73, -1, 75, 76, @@ -18888,7 +19040,7 @@ static const yytype_int16 yycheck[] = 357, 358, 359, 360, -1, 362, 363, -1, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, -1, -1, 384, 385, 386, - 387, 388, -1, 390, 391, 392, -1, -1, 395, 396, + 387, 388, 389, 390, 391, 392, -1, -1, 395, 396, 397, 398, -1, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, -1, -1, 417, 418, -1, 420, -1, 422, 423, 424, 425, 426, @@ -18902,204 +19054,201 @@ static const yytype_int16 yycheck[] = 497, 498, 499, 500, 501, 3, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 22, 23, 24, 25, 26, 27, - 28, 29, -1, 31, 32, 33, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 43, 44, -1, 46, 47, - 48, -1, 50, 51, 52, 53, 54, -1, 56, 57, + 28, 29, -1, 31, 32, 33, -1, -1, -1, 37, + -1, -1, -1, -1, 42, 43, 44, -1, 46, 47, + 48, 49, 50, 51, 52, -1, 54, 55, 56, 57, -1, 59, 60, 61, 62, 63, 64, -1, -1, 67, 68, 69, 70, 71, 72, 73, -1, 75, 76, 77, - 78, 79, -1, -1, -1, 83, 84, 85, 86, 87, - 88, -1, 90, 91, 92, -1, 94, 95, 96, 97, - 98, 99, -1, -1, 102, 103, 104, 105, 106, 107, + 78, -1, -1, 81, -1, 83, 84, 85, 86, 87, + 88, 89, 90, 91, 92, -1, 94, 95, 96, 97, + 98, 99, -1, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, -1, 118, -1, 120, 121, 122, 123, 124, 125, -1, -1, 128, 129, 130, 131, -1, -1, 134, 135, 136, 137, 138, -1, 140, 141, 142, -1, 144, 145, 146, -1, - 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, - 158, 159, -1, 161, -1, 163, 164, 165, 166, -1, - 168, -1, 170, -1, -1, -1, 174, 175, 176, -1, - 178, -1, 180, -1, 182, 183, 184, 185, -1, 187, - 188, 189, 190, 191, 192, 193, -1, 195, 196, 197, + 148, 149, 150, 151, -1, 153, 154, 155, 156, 157, + 158, -1, -1, 161, -1, 163, 164, 165, 166, -1, + 168, -1, 170, 171, -1, 173, 174, 175, -1, 177, + 178, -1, 180, -1, -1, -1, 184, 185, -1, 187, + 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, -1, 200, 201, 202, 203, 204, 205, 206, -1, - 208, -1, 210, 211, 212, 213, 214, 215, 216, 217, - -1, 219, -1, 221, -1, -1, 224, -1, 226, 227, - 228, 229, 230, 231, -1, -1, 234, -1, 236, -1, + 208, 209, -1, 211, 212, 213, 214, 215, 216, 217, + -1, 219, -1, 221, 222, 223, 224, 225, 226, 227, + 228, 229, 230, 231, -1, -1, 234, 235, 236, 237, -1, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, - 268, -1, 270, 271, 272, 273, 274, -1, 276, 277, - -1, 279, -1, 281, 282, 283, 284, 285, 286, -1, + 268, 269, 270, 271, 272, 273, -1, -1, 276, 277, + 278, 279, -1, -1, 282, 283, 284, 285, 286, -1, 288, 289, -1, -1, 292, 293, 294, -1, -1, 297, - 298, 299, -1, 301, -1, 303, 304, 305, 306, 307, + 298, -1, 300, 301, 302, -1, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, -1, -1, -1, - -1, 319, 320, 321, -1, 323, 324, 325, 326, 327, + -1, 319, 320, -1, 322, 323, 324, -1, 326, 327, 328, -1, 330, 331, 332, 333, 334, 335, -1, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, -1, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, - 358, 359, 360, -1, 362, 363, -1, 365, 366, 367, + 358, 359, 360, -1, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, - 378, 379, 380, 381, -1, -1, 384, 385, 386, 387, - 388, 389, 390, 391, 392, -1, -1, 395, 396, 397, + 378, 379, 380, 381, -1, 383, 384, 385, 386, 387, + 388, 389, 390, 391, 392, -1, 394, 395, 396, 397, 398, -1, 400, 401, 402, 403, 404, 405, 406, 407, - 408, 409, 410, 411, 412, 413, 414, -1, -1, 417, - 418, -1, 420, -1, 422, 423, 424, 425, 426, -1, - 428, 429, 430, -1, -1, 433, 434, 435, 436, 437, - -1, 439, 440, 441, 442, 443, 444, 445, 446, -1, + 408, 409, 410, 411, 412, 413, -1, -1, -1, 417, + 418, -1, 420, 421, 422, 423, 424, 425, 426, -1, + 428, 429, 430, -1, -1, 433, 434, -1, 436, -1, + -1, 439, 440, 441, 442, 443, 444, 445, 446, 447, -1, 449, 450, 451, -1, 453, 454, 455, 456, -1, - 458, 459, 460, 461, 462, 463, 464, 465, -1, 467, - -1, 469, 470, 471, 472, 473, 474, 475, -1, -1, - 478, -1, -1, 481, 482, 483, 484, 485, 486, 487, - 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, - 498, 499, 500, 501, 3, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 22, 23, 24, 25, 26, 27, 28, - 29, -1, 31, 32, 33, -1, -1, -1, -1, -1, - -1, -1, -1, -1, 43, 44, -1, 46, 47, 48, - -1, 50, 51, 52, 53, 54, -1, 56, 57, -1, - 59, 60, 61, 62, 63, 64, -1, -1, 67, 68, - 69, 70, 71, 72, 73, -1, 75, 76, 77, 78, - 79, -1, -1, -1, 83, 84, 85, 86, 87, 88, - -1, 90, 91, 92, -1, 94, 95, 96, 97, 98, - 99, -1, -1, 102, 103, 104, 105, 106, 107, 108, - 109, 110, 111, 112, 113, 114, 115, 116, -1, 118, - -1, 120, 121, 122, 123, 124, 125, -1, -1, 128, - 129, 130, 131, -1, -1, 134, 135, 136, 137, 138, - -1, 140, 141, 142, -1, 144, 145, 146, -1, 148, - 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, - 159, -1, 161, -1, 163, 164, 165, 166, -1, 168, - -1, 170, -1, -1, -1, 174, 175, 176, -1, 178, - -1, 180, -1, 182, 183, 184, 185, -1, 187, 188, - 189, 190, 191, 192, 193, -1, 195, 196, 197, 198, - -1, 200, 201, 202, 203, 204, 205, 206, -1, 208, - -1, 210, 211, 212, 213, 214, 215, 216, 217, -1, - 219, -1, 221, -1, -1, 224, -1, 226, 227, 228, - 229, 230, 231, -1, -1, 234, -1, 236, -1, -1, - 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, - 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, - 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, - -1, 270, 271, 272, 273, 274, -1, 276, 277, -1, - 279, -1, 281, 282, 283, 284, 285, 286, -1, 288, - 289, -1, -1, 292, 293, 294, -1, -1, 297, 298, - 299, -1, 301, -1, 303, 304, 305, 306, 307, 308, - 309, 310, 311, 312, 313, 314, -1, -1, -1, -1, - 319, 320, 321, -1, 323, 324, 325, 326, 327, 328, - -1, 330, 331, 332, 333, 334, 335, -1, 337, 338, - 339, 340, 341, 342, 343, 344, 345, 346, -1, 348, - 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, - 359, 360, -1, 362, 363, -1, 365, 366, 367, 368, - 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, - 379, 380, 381, -1, -1, 384, 385, 386, 387, 388, - 389, 390, 391, 392, -1, -1, 395, 396, 397, 398, - -1, 400, 401, 402, 403, 404, 405, 406, 407, 408, - 409, 410, 411, 412, 413, 414, -1, -1, 417, 418, - -1, 420, -1, 422, 423, 424, 425, 426, -1, 428, - 429, 430, -1, -1, 433, 434, 435, 436, 437, -1, - 439, 440, 441, 442, 443, 444, 445, 446, -1, -1, - 449, 450, 451, -1, 453, 454, 455, 456, -1, 458, - 459, 460, 461, 462, 463, 464, 465, -1, 467, -1, - 469, 470, 471, 472, 473, 474, 475, -1, -1, 478, - -1, -1, 481, 482, 483, 484, 485, 486, 487, 488, - 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, - 499, 500, 501, 3, -1, -1, -1, -1, -1, -1, + 458, 459, 460, 461, 462, -1, 464, 465, -1, 467, + 468, 469, 470, 471, 472, 473, 474, 475, -1, -1, + 478, -1, -1, 481, 482, 483, 484, 485, 486, 3, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 498, 499, 500, 501, -1, -1, -1, -1, 22, 23, + 24, 25, 26, 27, 28, 29, -1, 31, 32, 33, + -1, -1, -1, 37, -1, -1, -1, -1, 42, 43, + 44, -1, 46, 47, 48, 49, 50, 51, 52, -1, + 54, 55, 56, 57, -1, 59, 60, 61, 62, 63, + 64, -1, -1, 67, 68, 69, 70, 71, 72, 73, + -1, 75, 76, 77, 78, -1, -1, 81, -1, 83, + 84, 85, 86, 87, 88, 89, 90, 91, 92, -1, + 94, 95, 96, 97, 98, 99, -1, 101, 102, 103, + 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, + 114, 115, 116, -1, 118, -1, 120, 121, 122, 123, + 124, 125, -1, -1, 128, 129, 130, 131, -1, -1, + 134, 135, 136, 137, 138, -1, 140, 141, 142, -1, + 144, 145, 146, -1, 148, 149, 150, 151, -1, 153, + 154, 155, 156, 157, 158, -1, -1, 161, -1, 163, + 164, 165, 166, -1, 168, -1, 170, 171, -1, 173, + 174, 175, -1, 177, 178, -1, 180, -1, -1, -1, + 184, 185, -1, 187, 188, 189, 190, 191, 192, 193, + 194, 195, 196, 197, 198, -1, 200, 201, 202, 203, + 204, 205, 206, -1, 208, 209, -1, 211, 212, 213, + 214, 215, 216, 217, -1, 219, -1, 221, 222, 223, + 224, 225, 226, 227, 228, 229, 230, 231, -1, -1, + 234, 235, 236, 237, -1, 239, 240, 241, 242, 243, + 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, + 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, + 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, + -1, -1, 276, 277, 278, 279, -1, -1, 282, 283, + 284, 285, 286, -1, 288, 289, -1, -1, 292, 293, + 294, -1, -1, 297, 298, -1, 300, 301, 302, -1, + 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, + 314, -1, -1, -1, -1, 319, 320, -1, 322, 323, + 324, -1, 326, 327, 328, -1, 330, 331, 332, 333, + 334, 335, -1, 337, 338, 339, 340, 341, 342, 343, + 344, 345, 346, -1, 348, 349, 350, 351, 352, 353, + 354, 355, 356, 357, 358, 359, 360, -1, 362, 363, + 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, + 374, 375, 376, 377, 378, 379, 380, 381, -1, 383, + 384, 385, 386, 387, 388, 389, 390, 391, 392, -1, + 394, 395, 396, 397, 398, -1, 400, 401, 402, 403, + 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, + -1, -1, -1, 417, 418, -1, 420, 421, 422, 423, + 424, 425, 426, -1, 428, 429, 430, -1, -1, 433, + 434, -1, 436, -1, -1, 439, 440, 441, 442, 443, + 444, 445, 446, 447, -1, 449, 450, 451, -1, 453, + 454, 455, 456, -1, 458, 459, 460, 461, 462, -1, + 464, 465, -1, 467, 468, 469, 470, 471, 472, 473, + 474, 475, -1, -1, 478, -1, -1, 481, 482, 483, + 484, 485, 486, 3, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 498, 499, 500, 501, -1, -1, -1, -1, 22, 23, 24, 25, 26, 27, 28, 29, - -1, 31, 32, 33, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 43, 44, -1, 46, 47, 48, -1, - 50, 51, 52, 53, 54, -1, 56, 57, -1, 59, + -1, 31, 32, 33, -1, -1, -1, 37, -1, -1, + -1, -1, 42, 43, 44, -1, 46, 47, 48, 49, + 50, 51, 52, -1, 54, 55, 56, 57, -1, 59, 60, 61, 62, 63, 64, -1, -1, 67, 68, 69, - 70, 71, 72, 73, -1, 75, 76, 77, 78, 79, - -1, -1, -1, 83, 84, 85, 86, 87, 88, -1, + 70, 71, 72, 73, -1, 75, 76, 77, 78, -1, + -1, 81, -1, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, -1, 94, 95, 96, 97, 98, 99, - -1, -1, 102, 103, 104, 105, 106, 107, 108, 109, + -1, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, -1, 118, -1, 120, 121, 122, 123, 124, 125, -1, -1, 128, 129, 130, 131, -1, -1, 134, 135, 136, 137, 138, -1, 140, 141, 142, -1, 144, 145, 146, -1, 148, 149, - 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, + 150, 151, -1, 153, 154, 155, 156, 157, 158, -1, -1, 161, -1, 163, 164, 165, 166, -1, 168, -1, - 170, -1, -1, -1, 174, 175, 176, -1, 178, -1, - 180, -1, 182, 183, 184, 185, -1, 187, 188, 189, - 190, 191, 192, 193, -1, 195, 196, 197, 198, -1, - 200, 201, 202, 203, 204, 205, 206, -1, 208, -1, - 210, 211, 212, 213, 214, 215, 216, 217, -1, 219, - -1, 221, -1, -1, 224, -1, 226, 227, 228, 229, - 230, 231, -1, -1, 234, -1, 236, -1, -1, 239, + 170, 171, -1, 173, 174, 175, 176, 177, 178, -1, + 180, -1, -1, -1, 184, 185, -1, 187, 188, 189, + 190, 191, 192, 193, 194, 195, 196, 197, 198, -1, + 200, 201, 202, 203, 204, 205, 206, -1, 208, 209, + -1, 211, 212, 213, 214, 215, 216, 217, -1, 219, + -1, 221, 222, 223, 224, 225, 226, 227, 228, 229, + 230, 231, -1, -1, 234, 235, 236, 237, -1, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, - 260, 261, 262, 263, 264, 265, 266, 267, 268, -1, - 270, 271, 272, 273, 274, -1, 276, 277, -1, 279, - -1, 281, 282, 283, 284, 285, 286, -1, 288, 289, - -1, -1, 292, 293, 294, -1, -1, 297, 298, 299, - -1, 301, -1, 303, 304, 305, 306, 307, 308, 309, + 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, + 270, 271, 272, 273, -1, -1, 276, 277, 278, 279, + -1, -1, 282, 283, 284, 285, 286, -1, 288, 289, + -1, -1, 292, 293, 294, -1, -1, 297, 298, -1, + 300, 301, 302, -1, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, -1, -1, -1, -1, 319, - 320, 321, -1, 323, 324, 325, 326, 327, 328, -1, + 320, -1, 322, 323, 324, -1, 326, 327, 328, -1, 330, 331, 332, 333, 334, 335, -1, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, -1, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, - 360, -1, 362, 363, -1, 365, 366, 367, 368, 369, + 360, -1, 362, 363, 364, 365, 366, 367, -1, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, - 380, 381, -1, -1, 384, 385, 386, 387, 388, 389, - 390, 391, 392, -1, -1, 395, 396, 397, 398, -1, + 380, 381, -1, 383, 384, 385, 386, 387, 388, 389, + -1, 391, 392, -1, 394, 395, 396, 397, 398, -1, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, - 410, 411, 412, 413, 414, -1, -1, 417, 418, -1, - 420, -1, 422, 423, 424, 425, 426, -1, 428, 429, - 430, -1, -1, 433, 434, 435, 436, 437, -1, 439, + 410, 411, 412, 413, -1, -1, -1, 417, 418, -1, + 420, 421, 422, 423, 424, 425, 426, -1, 428, 429, + 430, -1, -1, 433, 434, -1, 436, -1, -1, 439, 440, 441, 442, 443, 444, 445, 446, -1, -1, 449, 450, 451, -1, 453, 454, 455, 456, -1, 458, 459, - 460, 461, 462, 463, 464, 465, -1, 467, -1, 469, + 460, 461, 462, -1, 464, 465, -1, 467, 468, 469, 470, 471, 472, 473, 474, 475, -1, -1, 478, -1, - -1, 481, 482, 483, 484, 485, 486, 487, 488, 489, - 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, - 500, 501, 3, -1, -1, -1, -1, -1, -1, -1, + -1, 481, 482, 483, 484, 485, 486, 3, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 498, 499, + 500, 501, -1, -1, -1, -1, 22, 23, 24, 25, + 26, 27, 28, 29, -1, 31, 32, 33, -1, -1, + -1, -1, -1, -1, -1, -1, -1, 43, 44, -1, + 46, 47, 48, -1, 50, 51, 52, 53, 54, -1, + 56, 57, -1, 59, 60, 61, 62, 63, 64, -1, + -1, 67, 68, 69, 70, 71, 72, 73, -1, 75, + 76, 77, 78, 79, -1, -1, -1, 83, 84, 85, + 86, 87, 88, -1, 90, 91, 92, -1, 94, 95, + 96, 97, 98, 99, -1, -1, 102, 103, 104, 105, + 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, + 116, -1, 118, -1, 120, 121, 122, 123, 124, 125, + -1, -1, 128, 129, 130, 131, -1, -1, 134, 135, + 136, 137, 138, -1, 140, 141, 142, -1, 144, 145, + 146, -1, 148, 149, 150, 151, 152, 153, 154, 155, + 156, 157, 158, 159, -1, 161, -1, 163, 164, 165, + 166, -1, 168, -1, 170, -1, -1, -1, 174, 175, + 176, -1, 178, -1, 180, -1, 182, 183, -1, 185, + -1, 187, 188, 189, 190, 191, 192, 193, -1, 195, + 196, 197, 198, -1, 200, 201, 202, 203, 204, 205, + 206, -1, 208, -1, 210, 211, 212, 213, 214, 215, + 216, 217, -1, 219, -1, 221, -1, -1, 224, -1, + 226, 227, 228, 229, 230, 231, -1, -1, 234, -1, + 236, -1, -1, 239, 240, 241, 242, 243, 244, 245, + 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, + 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, + 266, 267, 268, -1, 270, 271, 272, 273, 274, -1, + 276, 277, -1, 279, -1, 281, 282, 283, 284, 285, + 286, -1, 288, 289, -1, -1, 292, 293, 294, -1, + -1, 297, 298, 299, -1, 301, -1, 303, 304, 305, + 306, 307, 308, 309, -1, 311, 312, 313, 314, -1, + -1, -1, -1, 319, 320, 321, -1, 323, 324, 325, + 326, 327, 328, -1, 330, 331, 332, 333, 334, 335, + -1, 337, 338, 339, -1, 341, 342, 343, 344, 345, + 346, -1, 348, 349, 350, 351, 352, 353, 354, 355, + 356, 357, 358, 359, 360, -1, 362, 363, -1, 365, + 366, 367, 368, -1, 370, 371, 372, 373, 374, 375, + 376, 377, 378, 379, 380, 381, -1, -1, 384, 385, + 386, 387, 388, 389, 390, 391, 392, -1, -1, 395, + 396, 397, 398, -1, 400, 401, 402, 403, 404, 405, + 406, 407, 408, 409, 410, 411, 412, 413, 414, -1, + -1, 417, 418, -1, 420, -1, 422, 423, 424, 425, + 426, -1, 428, 429, 430, -1, -1, 433, 434, 435, + 436, 437, -1, 439, 440, 441, 442, 443, 444, 445, + 446, -1, -1, 449, 450, 451, -1, 453, 454, 455, + 456, -1, 458, 459, 460, 461, 462, 463, 464, 465, + -1, 467, -1, 469, 470, 471, 472, 473, 474, 475, + -1, -1, 478, -1, -1, 481, 482, 483, 484, 485, + 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, + 496, 497, 498, 499, 500, 501, 3, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 22, 23, 24, 25, 26, 27, 28, 29, -1, - 31, 32, 33, -1, -1, -1, 37, -1, -1, -1, - -1, 42, 43, 44, -1, 46, 47, 48, 49, 50, - 51, 52, -1, 54, 55, 56, 57, -1, 59, 60, - 61, 62, 63, 64, -1, -1, 67, 68, 69, 70, - 71, 72, 73, -1, 75, 76, 77, 78, -1, -1, - 81, -1, 83, 84, 85, 86, 87, 88, 89, 90, - 91, 92, -1, 94, 95, 96, 97, 98, 99, -1, - 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, - 111, 112, 113, 114, 115, 116, -1, 118, -1, 120, - 121, 122, 123, 124, 125, -1, -1, 128, 129, 130, - 131, -1, -1, 134, 135, 136, 137, 138, -1, 140, - 141, 142, -1, 144, 145, 146, -1, 148, 149, 150, - 151, -1, 153, 154, 155, 156, 157, 158, -1, -1, - 161, -1, 163, 164, 165, 166, -1, 168, -1, 170, - 171, -1, 173, 174, 175, -1, 177, 178, -1, 180, - -1, -1, -1, 184, 185, -1, 187, 188, 189, 190, - 191, 192, 193, 194, 195, 196, 197, 198, -1, 200, - 201, 202, 203, 204, 205, 206, -1, 208, 209, -1, - 211, 212, 213, 214, 215, 216, 217, -1, 219, -1, - 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, - 231, -1, -1, 234, 235, 236, 237, -1, 239, 240, - 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, - 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, - 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, - 271, 272, 273, -1, -1, 276, 277, 278, 279, -1, - -1, 282, 283, 284, 285, 286, -1, 288, 289, -1, - -1, 292, 293, 294, -1, -1, 297, 298, -1, 300, - 301, 302, -1, 304, 305, 306, 307, 308, 309, 310, - 311, 312, 313, 314, -1, -1, -1, -1, 319, 320, - -1, 322, 323, 324, -1, 326, 327, 328, -1, 330, - 331, 332, 333, 334, 335, -1, 337, 338, 339, 340, - 341, 342, 343, 344, 345, 346, -1, 348, 349, 350, - 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, - -1, 362, 363, 364, 365, 366, 367, 368, 369, 370, - 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, - 381, -1, 383, 384, 385, 386, 387, 388, 389, 390, - 391, 392, -1, 394, 395, 396, 397, 398, -1, 400, - 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, - 411, 412, 413, -1, -1, -1, 417, 418, -1, 420, - 421, 422, 423, 424, 425, 426, -1, 428, 429, 430, - -1, -1, 433, 434, -1, 436, -1, -1, 439, 440, - 441, 442, 443, 444, 445, 446, 447, -1, 449, 450, - 451, -1, 453, 454, 455, 456, -1, 458, 459, 460, - 461, 462, -1, 464, 465, -1, 467, 468, 469, 470, - 471, 472, 473, 474, 475, -1, -1, 478, -1, -1, - 481, 482, 483, 484, 485, 486, 3, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 498, 499, 500, - 501, -1, -1, -1, -1, 22, 23, 24, 25, 26, + -1, -1, -1, -1, -1, 22, 23, 24, 25, 26, 27, 28, 29, -1, 31, 32, 33, -1, -1, -1, 37, -1, -1, -1, -1, 42, 43, 44, -1, 46, 47, 48, 49, 50, 51, 52, -1, 54, 55, 56, @@ -19122,7 +19271,7 @@ static const yytype_int16 yycheck[] = 217, -1, 219, -1, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, -1, -1, 234, 235, 236, 237, -1, 239, 240, 241, 242, 243, 244, 245, 246, - 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, + -1, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, -1, -1, 276, 277, 278, 279, -1, -1, 282, 283, 284, 285, 286, @@ -19134,216 +19283,69 @@ static const yytype_int16 yycheck[] = 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, -1, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, -1, 362, 363, 364, 365, 366, - 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, + 367, -1, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, -1, 383, 384, 385, 386, - 387, 388, 389, 390, 391, 392, -1, 394, 395, 396, + 387, 388, 389, -1, 391, 392, -1, 394, 395, 396, 397, 398, -1, 400, 401, 402, 403, 404, 405, 406, - 407, 408, 409, 410, 411, 412, 413, -1, -1, -1, + 407, 408, 409, 410, 411, -1, 413, -1, -1, -1, 417, 418, -1, 420, 421, 422, 423, 424, 425, 426, -1, 428, 429, 430, -1, -1, 433, 434, -1, 436, -1, -1, 439, 440, 441, 442, 443, 444, 445, 446, - 447, -1, 449, 450, 451, -1, 453, 454, 455, 456, + -1, -1, 449, 450, 451, -1, 453, 454, 455, 456, -1, 458, 459, 460, 461, 462, -1, 464, 465, -1, 467, 468, 469, 470, 471, 472, 473, 474, 475, -1, - -1, 478, -1, -1, 481, 482, 483, 484, 485, 486, - 3, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 498, 499, 500, 501, -1, -1, -1, -1, 22, - 23, 24, 25, 26, 27, 28, 29, -1, 31, 32, - 33, -1, -1, -1, 37, -1, -1, -1, -1, 42, - 43, 44, -1, 46, 47, 48, 49, 50, 51, 52, - -1, 54, 55, 56, 57, -1, 59, 60, 61, 62, - 63, 64, -1, -1, 67, 68, 69, 70, 71, 72, - 73, -1, 75, 76, 77, 78, -1, -1, 81, -1, - 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, - -1, 94, 95, 96, 97, 98, 99, -1, 101, 102, - 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, - 113, 114, 115, 116, -1, 118, -1, 120, 121, 122, - 123, 124, 125, -1, -1, 128, 129, 130, 131, -1, - -1, 134, 135, 136, 137, 138, -1, 140, 141, 142, - -1, 144, 145, 146, -1, 148, 149, 150, 151, -1, - 153, 154, 155, 156, 157, 158, -1, -1, 161, -1, - 163, 164, 165, 166, -1, 168, -1, 170, 171, -1, - 173, 174, 175, 176, 177, 178, -1, 180, -1, -1, - -1, 184, 185, -1, 187, 188, 189, 190, 191, 192, - 193, 194, 195, 196, 197, 198, -1, 200, 201, 202, - 203, 204, 205, 206, -1, 208, 209, -1, 211, 212, - 213, 214, 215, 216, 217, -1, 219, -1, 221, 222, - 223, 224, 225, 226, 227, 228, 229, 230, 231, -1, - -1, 234, 235, 236, 237, -1, 239, 240, 241, 242, - 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, - 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, - 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, - 273, -1, -1, 276, 277, 278, 279, -1, -1, 282, - 283, 284, 285, 286, -1, 288, 289, -1, -1, 292, - 293, 294, -1, -1, 297, 298, -1, 300, 301, 302, - -1, 304, 305, 306, 307, 308, 309, 310, 311, 312, - 313, 314, -1, -1, -1, -1, 319, 320, -1, 322, - 323, 324, -1, 326, 327, 328, -1, 330, 331, 332, - 333, 334, 335, -1, 337, 338, 339, 340, 341, 342, - 343, 344, 345, 346, -1, 348, 349, 350, 351, 352, - 353, 354, 355, 356, 357, 358, 359, 360, -1, 362, - 363, 364, 365, 366, 367, -1, 369, 370, 371, 372, - 373, 374, 375, 376, 377, 378, 379, 380, 381, -1, - 383, 384, 385, 386, 387, 388, 389, -1, 391, 392, - -1, 394, 395, 396, 397, 398, -1, 400, 401, 402, - 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, - 413, -1, -1, -1, 417, 418, -1, 420, 421, 422, - 423, 424, 425, 426, -1, 428, 429, 430, -1, -1, - 433, 434, -1, 436, -1, -1, 439, 440, 441, 442, - 443, 444, 445, 446, -1, -1, 449, 450, 451, -1, - 453, 454, 455, 456, -1, 458, 459, 460, 461, 462, - -1, 464, 465, -1, 467, 468, 469, 470, 471, 472, - 473, 474, 475, -1, -1, 478, -1, -1, 481, 482, - 483, 484, 485, 486, 3, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 498, 499, 500, 501, -1, - -1, -1, -1, 22, 23, 24, 25, 26, 27, 28, - 29, -1, 31, 32, 33, -1, -1, -1, -1, -1, - -1, -1, -1, -1, 43, 44, -1, 46, 47, 48, - -1, 50, 51, 52, 53, 54, -1, 56, 57, -1, - 59, 60, 61, 62, 63, 64, -1, -1, 67, 68, - 69, 70, 71, 72, 73, -1, 75, 76, 77, 78, - 79, -1, -1, -1, 83, 84, 85, 86, 87, 88, - -1, 90, 91, 92, -1, 94, 95, 96, 97, 98, - 99, -1, -1, 102, 103, 104, 105, 106, 107, 108, - 109, 110, 111, 112, 113, 114, 115, 116, -1, 118, - -1, 120, 121, 122, 123, 124, 125, -1, -1, 128, - 129, 130, 131, -1, -1, 134, 135, 136, 137, 138, - -1, 140, 141, 142, -1, 144, 145, 146, -1, 148, - 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, - 159, -1, 161, -1, 163, 164, 165, 166, -1, 168, - -1, 170, -1, -1, -1, 174, 175, 176, -1, 178, - -1, 180, -1, 182, 183, -1, 185, -1, 187, 188, - 189, 190, 191, 192, 193, -1, 195, 196, 197, 198, - -1, 200, 201, 202, 203, 204, 205, 206, -1, 208, - -1, 210, 211, 212, 213, 214, 215, 216, 217, -1, - 219, -1, 221, -1, -1, 224, -1, 226, 227, 228, - 229, 230, 231, -1, -1, 234, -1, 236, -1, -1, - 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, - 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, - 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, - -1, 270, 271, 272, 273, 274, -1, 276, 277, -1, - 279, -1, 281, 282, 283, 284, 285, 286, -1, 288, - 289, -1, -1, 292, 293, 294, -1, -1, 297, 298, - 299, -1, 301, -1, 303, 304, 305, 306, 307, 308, - 309, -1, 311, 312, 313, 314, -1, -1, -1, -1, - 319, 320, 321, -1, 323, 324, 325, 326, 327, 328, - -1, 330, 331, 332, 333, 334, 335, -1, 337, 338, - 339, -1, 341, 342, 343, 344, 345, 346, -1, 348, - 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, - 359, 360, -1, 362, 363, -1, 365, 366, 367, 368, - -1, 370, 371, 372, 373, 374, 375, 376, 377, 378, - 379, 380, 381, -1, -1, 384, 385, 386, 387, 388, - 389, 390, 391, 392, -1, -1, 395, 396, 397, 398, - -1, 400, 401, 402, 403, 404, 405, 406, 407, 408, - 409, 410, 411, 412, 413, 414, -1, -1, 417, 418, - -1, 420, -1, 422, 423, 424, 425, 426, -1, 428, - 429, 430, -1, -1, 433, 434, 435, 436, 437, -1, - 439, 440, 441, 442, 443, 444, 445, 446, -1, -1, - 449, 450, 451, -1, 453, 454, 455, 456, -1, 458, - 459, 460, 461, 462, 463, 464, 465, -1, 467, -1, - 469, 470, 471, 472, 473, 474, 475, -1, -1, 478, - -1, -1, 481, 482, 483, 484, 485, 486, 487, 488, - 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, - 499, 500, 501, 3, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, 22, 23, 24, 25, 26, 27, 28, 29, - -1, 31, 32, 33, -1, -1, -1, 37, -1, -1, - -1, -1, 42, 43, 44, -1, 46, 47, 48, 49, - 50, 51, 52, -1, 54, 55, 56, 57, -1, 59, - 60, 61, 62, 63, 64, -1, -1, 67, 68, 69, - 70, 71, 72, 73, -1, 75, 76, 77, 78, -1, - -1, 81, -1, 83, 84, 85, 86, 87, 88, 89, - 90, 91, 92, -1, 94, 95, 96, 97, 98, 99, - -1, 101, 102, 103, 104, 105, 106, 107, 108, 109, - 110, 111, 112, 113, 114, 115, 116, -1, 118, -1, - 120, 121, 122, 123, 124, 125, -1, -1, 128, 129, - 130, 131, -1, -1, 134, 135, 136, 137, 138, -1, - 140, 141, 142, -1, 144, 145, 146, -1, 148, 149, - 150, 151, -1, 153, 154, 155, 156, 157, 158, -1, - -1, 161, -1, 163, 164, 165, 166, -1, 168, -1, - 170, 171, -1, 173, 174, 175, -1, 177, 178, -1, - 180, -1, -1, -1, 184, 185, -1, 187, 188, 189, - 190, 191, 192, 193, 194, 195, 196, 197, 198, -1, - 200, 201, 202, 203, 204, 205, 206, -1, 208, 209, - -1, 211, 212, 213, 214, 215, 216, 217, -1, 219, - -1, 221, 222, 223, 224, 225, 226, 227, 228, 229, - 230, 231, -1, -1, 234, 235, 236, 237, -1, 239, - 240, 241, 242, 243, 244, 245, 246, -1, 248, 249, - 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, - 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, - 270, 271, 272, 273, -1, -1, 276, 277, 278, 279, - -1, -1, 282, 283, 284, 285, 286, -1, 288, 289, - -1, -1, 292, 293, 294, -1, -1, 297, 298, -1, - 300, 301, 302, -1, 304, 305, 306, 307, 308, 309, - 310, 311, 312, 313, 314, -1, -1, -1, -1, 319, - 320, -1, 322, 323, 324, -1, 326, 327, 328, -1, - 330, 331, 332, 333, 334, 335, -1, 337, 338, 339, - 340, 341, 342, 343, 344, 345, 346, -1, 348, 349, - 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, - 360, -1, 362, 363, 364, 365, 366, 367, -1, 369, - 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, - 380, 381, -1, 383, 384, 385, 386, 387, 388, 389, - -1, 391, 392, -1, 394, 395, 396, 397, 398, -1, - 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, - 410, 411, -1, 413, -1, -1, -1, 417, 418, -1, - 420, 421, 422, 423, 424, 425, 426, -1, 428, 429, - 430, -1, -1, 433, 434, -1, 436, -1, -1, 439, - 440, 441, 442, 443, 444, 445, 446, -1, -1, 449, - 450, 451, -1, 453, 454, 455, 456, -1, 458, 459, - 460, 461, 462, -1, 464, 465, -1, 467, 468, 469, - 470, 471, 472, 473, 474, 475, -1, 22, 478, -1, - -1, 481, 482, 483, 484, 485, 486, 32, -1, 34, - 35, -1, -1, -1, -1, 22, -1, -1, 498, 499, - 500, 501, -1, -1, -1, 32, -1, 52, -1, -1, - -1, -1, -1, -1, -1, -1, 61, -1, -1, -1, - -1, -1, -1, -1, -1, 52, -1, -1, -1, -1, - 75, -1, -1, -1, 61, -1, -1, -1, -1, -1, - -1, 86, -1, -1, -1, -1, -1, -1, 75, -1, - -1, -1, -1, 98, -1, 100, -1, -1, -1, 86, - -1, -1, -1, -1, -1, -1, 111, -1, -1, -1, - -1, 98, -1, 100, -1, -1, -1, -1, -1, -1, - -1, 126, 127, -1, 111, -1, -1, -1, -1, -1, - -1, -1, 137, -1, -1, -1, -1, -1, 143, 126, - 127, -1, -1, -1, -1, -1, 151, -1, -1, -1, - 137, -1, -1, -1, -1, -1, 143, -1, -1, -1, - -1, -1, -1, 168, 151, -1, -1, 172, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 168, -1, -1, -1, 172, -1, -1, -1, -1, + 22, 478, -1, -1, 481, 482, 483, 484, 485, 486, + 32, -1, 34, 35, -1, -1, -1, -1, 22, -1, + -1, 498, 499, 500, 501, -1, -1, -1, 32, -1, + 52, -1, -1, -1, -1, -1, -1, -1, -1, 61, + -1, -1, -1, -1, -1, -1, -1, -1, 52, -1, + -1, -1, -1, 75, -1, -1, -1, 61, -1, -1, + -1, -1, -1, -1, 86, -1, -1, -1, -1, -1, + -1, 75, -1, -1, -1, -1, 98, -1, 100, -1, + -1, -1, 86, -1, -1, -1, -1, -1, -1, 111, + -1, -1, -1, -1, 98, -1, 100, -1, -1, -1, + -1, -1, -1, -1, 126, 127, -1, 111, -1, -1, + -1, -1, -1, -1, -1, 137, -1, -1, -1, -1, + -1, 143, 126, 127, -1, -1, -1, -1, -1, 151, + -1, -1, -1, 137, -1, -1, -1, -1, -1, 143, + -1, -1, -1, -1, -1, -1, 168, 151, -1, -1, + 172, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 168, -1, -1, -1, 172, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, 214, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 214, -1, -1, - -1, -1, -1, -1, -1, 240, -1, -1, -1, -1, + -1, -1, 214, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 240, -1, -1, -1, -1, -1, -1, + 214, -1, -1, -1, -1, -1, -1, -1, 240, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 240, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 315, 316, 317, -1, -1, -1, -1, -1, 323, -1, - -1, 326, -1, -1, -1, -1, -1, -1, 315, 316, - 317, -1, -1, -1, -1, -1, 323, -1, -1, 326, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, 357, -1, -1, -1, -1, -1, -1, -1, - -1, 366, -1, -1, -1, -1, -1, -1, -1, -1, - 357, -1, -1, -1, -1, -1, -1, 382, -1, 366, - -1, -1, -1, -1, 389, -1, -1, -1, 393, -1, - -1, -1, -1, -1, -1, 382, -1, -1, 403, -1, - -1, -1, 389, -1, -1, -1, 393, -1, -1, -1, - 415, -1, -1, -1, 419, -1, 403, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 415, -1, - -1, -1, 419, -1, 439, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 452, -1, -1, - -1, -1, 439, 458, -1, -1, -1, -1, 463, -1, - -1, -1, -1, 468, -1, 452, -1, -1, -1, -1, - -1, 458, -1, -1, -1, 480, 463, -1, -1, -1, + -1, -1, -1, 315, 316, 317, -1, -1, -1, -1, + -1, 323, -1, -1, 326, -1, -1, -1, -1, -1, + -1, 315, 316, 317, -1, -1, -1, -1, -1, 323, + -1, -1, 326, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 357, -1, -1, -1, -1, + -1, -1, -1, -1, 366, -1, -1, -1, -1, -1, + -1, -1, -1, 357, -1, -1, -1, -1, -1, -1, + 382, -1, 366, -1, -1, -1, -1, 389, -1, -1, + -1, 393, -1, -1, -1, -1, -1, -1, 382, -1, + -1, 403, -1, -1, -1, 389, -1, -1, -1, 393, + -1, -1, -1, 415, -1, -1, -1, 419, -1, 403, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 480, -1, -1, -1, -1, -1, 504, + -1, 415, -1, -1, -1, 419, -1, 439, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 518, -1, -1, -1, 504, -1, -1, + 452, -1, -1, -1, -1, 439, 458, -1, -1, -1, + -1, 463, -1, -1, -1, -1, 468, -1, 452, -1, + -1, -1, -1, -1, 458, -1, -1, -1, 480, 463, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 518 + -1, -1, -1, -1, -1, -1, 480, -1, -1, -1, + -1, -1, 504, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 518, -1, -1, -1, + 504, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 518 }; /* YYSTOS[STATE-NUM] -- The (internal number of the) accessing @@ -19480,238 +19482,238 @@ static const yytype_uint16 yystos[] = 81, 83, 89, 101, 132, 171, 173, 176, 177, 194, 209, 222, 223, 225, 235, 237, 247, 269, 278, 300, 302, 322, 364, 383, 394, 412, 421, 441, 466, 468, - 519, 824, 875, 876, 927, 933, 1005, 1010, 824, 419, - 545, 546, 519, 518, 639, 373, 584, 650, 275, 939, - 40, 192, 546, 583, 470, 192, 545, 192, 545, 1004, - 192, 545, 192, 545, 89, 944, 152, 484, 90, 129, - 308, 424, 192, 546, 152, 520, 931, 63, 360, 522, - 656, 152, 522, 656, 152, 290, 588, 589, 824, 933, - 355, 519, 522, 4, 160, 290, 438, 509, 510, 548, - 594, 597, 926, 958, 960, 961, 964, 959, 431, 518, - 676, 680, 824, 873, 518, 3, 68, 69, 109, 110, - 113, 114, 189, 190, 253, 254, 255, 256, 257, 258, - 259, 260, 263, 264, 337, 338, 378, 379, 474, 475, - 498, 499, 548, 810, 811, 812, 813, 814, 815, 816, - 817, 818, 819, 820, 821, 822, 878, 879, 770, 771, - 824, 545, 824, 880, 509, 510, 546, 825, 826, 855, - 866, 882, 518, 824, 872, 883, 824, 58, 172, 233, - 432, 824, 873, 886, 824, 519, 547, 518, 421, 725, - 726, 726, 707, 708, 758, 220, 702, 768, 726, 726, - 726, 225, 37, 225, 383, 772, 225, 300, 773, 758, - 773, 225, 772, 518, 225, 773, 225, 148, 200, 760, - 225, 726, 518, 547, 518, 726, 297, 824, 970, 972, - 875, 3, 37, 42, 49, 54, 55, 56, 57, 71, - 72, 81, 83, 89, 101, 112, 115, 165, 171, 173, - 177, 194, 209, 216, 217, 219, 222, 223, 225, 235, - 237, 247, 268, 269, 270, 278, 283, 300, 302, 322, - 342, 364, 368, 383, 390, 394, 397, 412, 421, 429, - 430, 441, 447, 464, 468, 786, 788, 789, 791, 793, - 795, 797, 799, 800, 801, 803, 804, 807, 808, 877, - 929, 1005, 1008, 40, 236, 546, 518, 516, 687, 467, - 806, 824, 892, 806, 806, 518, 518, 794, 794, 325, - 687, 518, 796, 527, 71, 72, 806, 824, 794, 518, - 518, 482, 504, 518, 809, 518, 809, 824, 824, 824, - 83, 148, 906, 910, 824, 873, 874, 687, 824, 872, - 552, 9, 547, 856, 857, 858, 520, 523, 549, 897, - 549, 518, 548, 518, 518, 548, 926, 3, 8, 11, - 15, 16, 17, 18, 19, 20, 21, 36, 40, 46, - 53, 80, 177, 194, 199, 222, 223, 237, 275, 278, - 292, 295, 394, 502, 505, 506, 507, 509, 510, 511, - 512, 513, 514, 864, 865, 866, 868, 900, 481, 840, - 302, 824, 522, 702, 518, 548, 702, 3, 117, 241, - 548, 594, 808, 971, 104, 972, 972, 40, 546, 519, - 522, 957, 522, 519, 700, 920, 921, 40, 983, 193, - 355, 220, 639, 389, 689, 689, 30, 712, 713, 824, - 59, 689, 706, 164, 272, 733, 227, 273, 341, 392, - 454, 4, 9, 30, 728, 824, 509, 510, 729, 730, - 824, 826, 745, 746, 719, 718, 716, 717, 167, 748, - 285, 750, 59, 695, 696, 697, 761, 825, 904, 904, - 716, 745, 873, 932, 172, 469, 976, 236, 545, 74, - 82, 93, 169, 192, 329, 448, 546, 621, 631, 646, - 82, 93, 554, 93, 554, 518, 431, 518, 619, 245, - 451, 619, 93, 522, 431, 545, 3, 791, 594, 59, - 596, 594, 594, 106, 251, 261, 59, 431, 480, 504, - 593, 266, 373, 593, 595, 775, 93, 431, 554, 373, - 545, 431, 373, 989, 546, 676, 517, 523, 875, 875, - 876, 522, 710, 711, 13, 14, 222, 222, 431, 431, - 546, 638, 643, 480, 679, 545, 380, 345, 384, 419, - 470, 665, 152, 100, 580, 604, 940, 941, 1000, 144, - 788, 275, 199, 585, 545, 275, 581, 592, 275, 518, - 639, 40, 275, 639, 275, 518, 659, 660, 661, 662, - 663, 664, 666, 192, 546, 633, 945, 552, 152, 172, - 599, 655, 551, 520, 930, 920, 923, 923, 930, 519, - 522, 13, 959, 965, 4, 926, 4, 926, 548, 552, - 678, 685, 55, 102, 123, 141, 145, 168, 171, 187, - 280, 288, 310, 339, 682, 40, 519, 824, 519, 172, - 522, 519, 318, 881, 519, 825, 825, 11, 15, 16, - 19, 20, 21, 199, 222, 292, 505, 506, 507, 509, - 510, 511, 512, 513, 514, 866, 825, 519, 777, 778, - 836, 167, 172, 884, 885, 522, 519, 40, 886, 873, - 886, 886, 172, 519, 40, 769, 518, 921, 4, 9, - 546, 720, 721, 723, 724, 829, 904, 902, 178, 241, - 419, 423, 425, 451, 545, 703, 477, 781, 519, 758, - 758, 225, 758, 290, 457, 774, 758, 225, 904, 758, - 758, 282, 282, 518, 758, 547, 782, 783, 518, 547, - 782, 522, 519, 522, 520, 518, 791, 518, 518, 520, - 39, 790, 518, 810, 811, 812, 813, 814, 815, 816, - 817, 818, 819, 820, 821, 822, 823, 519, 522, 794, - 555, 560, 667, 668, 686, 937, 982, 994, 873, 874, - 518, 476, 889, 890, 824, 874, 926, 824, 859, 860, - 861, 862, 806, 806, 8, 15, 16, 19, 20, 21, - 505, 506, 507, 509, 510, 511, 512, 513, 514, 546, - 864, 869, 519, 873, 429, 429, 926, 926, 518, 518, - 547, 907, 355, 914, 167, 517, 519, 522, 523, 522, - 528, 511, 824, 550, 873, 926, 824, 823, 823, 788, - 824, 824, 824, 824, 824, 824, 824, 824, 5, 552, - 934, 429, 45, 416, 901, 930, 824, 824, 518, 687, - 830, 887, 895, 132, 160, 275, 280, 285, 438, 449, - 824, 280, 518, 824, 431, 53, 177, 194, 199, 237, - 394, 824, 824, 824, 824, 824, 824, 824, 824, 824, - 824, 30, 38, 399, 863, 516, 520, 899, 181, 163, - 841, 368, 518, 855, 905, 172, 754, 875, 754, 518, - 548, 546, 545, 978, 545, 986, 824, 522, 519, 250, - 275, 701, 457, 985, 545, 557, 518, 546, 562, 572, - 573, 575, 41, 126, 714, 522, 457, 714, 266, 689, - 368, 369, 509, 510, 730, 732, 826, 392, 227, 291, - 313, 313, 522, 513, 4, 731, 926, 731, 368, 369, - 732, 545, 919, 279, 396, 751, 518, 921, 922, 522, - 181, 457, 199, 181, 220, 746, 717, 519, 546, 548, - 546, 548, 353, 541, 518, 192, 631, 923, 227, 275, - 227, 457, 518, 624, 787, 788, 923, 546, 192, 923, - 192, 546, 26, 137, 389, 537, 540, 552, 615, 629, - 923, 552, 623, 642, 923, 538, 923, 353, 389, 541, - 592, 594, 930, 923, 594, 930, 923, 594, 353, 389, - 541, 923, 923, 923, 923, 353, 389, 541, 923, 923, - 548, 510, 824, 896, 710, 710, 710, 466, 876, 193, - 358, 709, 824, 824, 280, 548, 952, 280, 952, 546, - 334, 675, 519, 522, 288, 172, 431, 670, 939, 583, - 470, 545, 545, 1004, 545, 545, 545, 295, 650, 518, - 687, 152, 3, 518, 518, 152, 152, 237, 546, 621, - 631, 634, 637, 647, 649, 480, 482, 626, 151, 686, - 152, 480, 946, 152, 519, 875, 522, 522, 40, 275, - 290, 546, 3, 656, 551, 656, 290, 656, 588, 824, - 676, 247, 511, 516, 518, 594, 677, 831, 832, 833, - 964, 519, 522, 40, 674, 548, 674, 275, 280, 339, - 674, 59, 674, 788, 519, 824, 824, 824, 884, 788, - 825, 825, 825, 825, 825, 825, 132, 275, 285, 825, - 825, 825, 825, 825, 825, 825, 825, 825, 825, 519, - 522, 40, 779, 824, 824, 885, 884, 788, 519, 519, - 519, 873, 788, 921, 519, 313, 369, 513, 518, 518, - 702, 423, 425, 423, 425, 545, 704, 704, 704, 824, - 181, 734, 774, 774, 758, 824, 518, 758, 167, 774, - 518, 547, 765, 774, 788, 519, 522, 782, 519, 970, - 3, 877, 39, 790, 546, 785, 785, 3, 516, 516, - 926, 431, 431, 431, 431, 788, 454, 519, 517, 873, - 824, 139, 890, 891, 519, 519, 519, 523, 522, 528, - 520, 519, 519, 501, 501, 519, 519, 824, 907, 908, - 909, 520, 518, 824, 911, 353, 918, 546, 838, 893, - 894, 824, 824, 856, 910, 519, 519, 519, 501, 825, - 825, 145, 873, 172, 132, 160, 280, 285, 438, 449, - 518, 145, 869, 824, 416, 901, 824, 887, 824, 431, - 518, 687, 824, 896, 551, 518, 518, 155, 842, 755, - 756, 781, 710, 781, 926, 823, 932, 932, 250, 518, - 756, 477, 984, 40, 59, 558, 568, 575, 897, 522, - 754, 507, 503, 715, 713, 292, 864, 867, 715, 4, - 926, 732, 291, 454, 729, 522, 244, 921, 695, 59, - 904, 518, 547, 59, 266, 976, 976, 431, 824, 275, - 646, 518, 152, 518, 624, 203, 643, 644, 605, 40, - 176, 614, 640, 605, 26, 137, 357, 359, 389, 534, - 535, 536, 542, 543, 152, 656, 152, 656, 615, 629, - 615, 519, 522, 548, 608, 507, 520, 519, 522, 431, - 373, 93, 431, 554, 373, 431, 431, 431, 373, 990, - 523, 517, 523, 709, 709, 709, 876, 282, 282, 519, - 518, 669, 3, 406, 407, 548, 684, 638, 675, 585, - 545, 581, 518, 40, 639, 662, 664, 939, 355, 419, - 548, 577, 578, 583, 685, 643, 545, 545, 1004, 545, - 519, 522, 288, 619, 288, 290, 618, 923, 480, 1003, - 545, 619, 40, 545, 519, 660, 666, 663, 666, 419, - 824, 152, 545, 599, 930, 672, 683, 964, 678, 548, - 548, 280, 643, 511, 643, 548, 511, 643, 548, 519, - 519, 885, 172, 132, 285, 518, 780, 777, 518, 519, - 519, 519, 546, 721, 781, 704, 704, 704, 704, 545, - 545, 545, 59, 186, 743, 774, 921, 518, 762, 763, - 764, 827, 830, 921, 167, 80, 784, 783, 519, 519, - 516, 788, 519, 522, 519, 926, 517, 926, 519, 811, - 813, 814, 815, 814, 815, 815, 519, 427, 824, 143, - 824, 859, 869, 809, 809, 519, 522, 519, 547, 824, - 911, 912, 913, 40, 518, 907, 915, 199, 522, 519, - 914, 823, 824, 36, 36, 824, 519, 824, 172, 518, - 877, 824, 519, 145, 825, 825, 145, 145, 824, 824, - 517, 523, 518, 898, 711, 477, 824, 301, 846, 522, - 734, 709, 734, 519, 937, 824, 361, 566, 546, 266, - 321, 117, 304, 518, 556, 686, 519, 522, 562, 984, - 824, 164, 231, 518, 715, 291, 545, 519, 922, 181, - 687, 688, 904, 922, 923, 923, 519, 152, 644, 631, - 644, 605, 633, 522, 519, 119, 207, 273, 275, 630, - 518, 33, 59, 651, 640, 74, 80, 93, 117, 119, - 207, 275, 280, 329, 347, 448, 457, 610, 611, 625, - 176, 117, 191, 275, 619, 593, 107, 117, 176, 275, - 405, 408, 595, 619, 389, 536, 442, 923, 546, 540, - 3, 37, 42, 49, 55, 81, 83, 89, 101, 171, - 173, 176, 177, 194, 209, 222, 223, 225, 235, 237, - 247, 269, 274, 278, 292, 300, 302, 322, 364, 383, - 390, 394, 412, 421, 441, 447, 468, 509, 510, 548, - 594, 606, 645, 788, 867, 927, 1005, 1011, 552, 642, - 923, 923, 923, 923, 923, 923, 923, 923, 923, 923, - 676, 896, 896, 519, 519, 519, 710, 107, 373, 520, - 593, 684, 518, 518, 637, 686, 946, 650, 192, 545, - 519, 522, 585, 519, 519, 581, 518, 40, 628, 626, - 634, 86, 590, 107, 273, 639, 686, 662, 664, 40, - 40, 687, 688, 633, 457, 943, 656, 519, 522, 643, - 825, 172, 518, 877, 782, 519, 522, 519, 734, 545, - 545, 545, 545, 30, 103, 182, 367, 518, 735, 736, - 737, 738, 739, 740, 741, 824, 824, 479, 843, 519, - 826, 870, 871, 199, 181, 759, 763, 519, 765, 766, - 767, 930, 790, 926, 790, 546, 790, 517, 517, 824, - 907, 522, 519, 546, 915, 916, 917, 40, 824, 826, - 894, 918, 824, 824, 824, 877, 519, 824, 36, 36, - 824, 824, 145, 519, 510, 896, 519, 875, 519, 824, - 519, 518, 546, 847, 743, 519, 743, 548, 519, 903, - 463, 418, 456, 567, 546, 561, 571, 290, 564, 507, - 575, 566, 869, 59, 519, 519, 462, 463, 692, 605, - 631, 519, 519, 480, 636, 120, 195, 205, 119, 459, - 824, 117, 40, 518, 930, 923, 825, 120, 195, 119, - 280, 227, 545, 636, 88, 651, 192, 280, 594, 824, - 651, 280, 509, 510, 597, 546, 787, 788, 656, 656, - 3, 247, 412, 927, 931, 507, 431, 431, 517, 517, - 709, 519, 519, 546, 676, 457, 671, 673, 685, 643, - 519, 1003, 40, 419, 275, 518, 548, 518, 946, 637, - 151, 686, 149, 201, 618, 122, 137, 328, 1003, 107, - 946, 480, 1001, 419, 290, 546, 942, 518, 683, 825, - 877, 519, 519, 9, 354, 727, 743, 518, 391, 518, - 519, 522, 546, 844, 845, 336, 744, 522, 519, 518, - 547, 59, 519, 199, 519, 766, 517, 788, 911, 522, - 519, 546, 517, 192, 519, 824, 824, 824, 523, 517, - 523, 519, 519, 546, 848, 843, 548, 843, 522, 462, - 897, 519, 522, 91, 566, 824, 519, 922, 922, 347, - 636, 518, 627, 605, 519, 191, 518, 824, 275, 611, - 636, 639, 923, 40, 152, 784, 931, 513, 606, 923, - 923, 519, 593, 124, 519, 519, 626, 686, 545, 152, - 685, 40, 519, 923, 1003, 30, 85, 94, 118, 191, - 204, 405, 408, 622, 622, 369, 369, 40, 64, 74, - 241, 687, 545, 518, 546, 565, 574, 836, 519, 519, - 518, 843, 873, 518, 873, 737, 40, 522, 824, 457, - 722, 826, 904, 921, 770, 518, 770, 915, 824, 896, - 896, 310, 849, 744, 744, 686, 304, 686, 561, 290, - 518, 559, 545, 605, 552, 632, 635, 409, 472, 612, - 613, 518, 607, 824, 519, 249, 648, 191, 457, 539, - 513, 442, 676, 548, 946, 618, 1001, 518, 545, 519, - 686, 626, 590, 686, 74, 293, 74, 943, 824, 80, - 569, 519, 522, 569, 9, 744, 519, 736, 519, 847, - 845, 371, 519, 904, 517, 517, 517, 59, 710, 722, - 722, 567, 93, 574, 133, 639, 507, 519, 522, 592, - 519, 273, 620, 173, 309, 395, 290, 616, 617, 641, - 607, 824, 442, 40, 518, 1001, 618, 1003, 1001, 293, - 293, 518, 519, 930, 570, 930, 946, 565, 570, 519, - 722, 519, 724, 519, 872, 184, 340, 369, 850, 462, - 923, 519, 276, 454, 648, 606, 635, 519, 613, 205, - 122, 454, 290, 641, 290, 616, 686, 574, 569, 714, - 781, 714, 53, 104, 444, 824, 851, 852, 851, 851, - 519, 686, 781, 389, 617, 63, 273, 360, 389, 609, - 609, 1001, 519, 570, 715, 715, 852, 368, 166, 324, - 166, 324, 148, 853, 853, 853, 573, 605, 25, 117, - 280, 946, 714, 36, 104, 181, 273, 428, 781, 781, - 715, 852, 368, 298 + 519, 711, 824, 875, 876, 927, 933, 1005, 1010, 824, + 419, 545, 546, 519, 518, 639, 373, 584, 650, 275, + 939, 40, 192, 546, 583, 470, 192, 545, 192, 545, + 1004, 192, 545, 192, 545, 89, 944, 152, 484, 90, + 129, 308, 424, 192, 546, 152, 520, 931, 63, 360, + 522, 656, 152, 522, 656, 152, 290, 588, 589, 824, + 933, 355, 519, 522, 4, 160, 290, 438, 509, 510, + 548, 594, 597, 926, 958, 960, 961, 964, 959, 431, + 518, 676, 680, 824, 873, 518, 3, 68, 69, 109, + 110, 113, 114, 189, 190, 253, 254, 255, 256, 257, + 258, 259, 260, 263, 264, 337, 338, 378, 379, 474, + 475, 498, 499, 548, 810, 811, 812, 813, 814, 815, + 816, 817, 818, 819, 820, 821, 822, 878, 879, 770, + 771, 824, 545, 824, 880, 509, 510, 546, 825, 826, + 855, 866, 882, 518, 824, 872, 883, 824, 58, 172, + 233, 432, 824, 873, 886, 824, 519, 547, 518, 421, + 725, 726, 726, 707, 708, 758, 220, 702, 768, 726, + 726, 726, 225, 37, 225, 383, 772, 225, 300, 773, + 758, 773, 225, 772, 518, 225, 773, 225, 148, 200, + 760, 225, 726, 518, 547, 518, 726, 297, 824, 970, + 972, 875, 3, 37, 42, 49, 54, 55, 56, 57, + 71, 72, 81, 83, 89, 101, 112, 115, 165, 171, + 173, 177, 194, 209, 216, 217, 219, 222, 223, 225, + 235, 237, 247, 268, 269, 270, 278, 283, 300, 302, + 322, 342, 364, 368, 383, 390, 394, 397, 412, 421, + 429, 430, 441, 447, 464, 468, 786, 788, 789, 791, + 793, 795, 797, 799, 800, 801, 803, 804, 807, 808, + 877, 929, 1005, 1008, 40, 236, 546, 518, 516, 687, + 467, 806, 824, 892, 806, 806, 518, 518, 794, 794, + 325, 687, 518, 796, 527, 71, 72, 806, 824, 794, + 518, 518, 482, 504, 518, 809, 518, 809, 824, 824, + 824, 83, 148, 906, 910, 824, 873, 874, 687, 824, + 872, 552, 9, 547, 856, 857, 858, 520, 523, 549, + 897, 549, 518, 548, 518, 518, 548, 926, 3, 8, + 11, 15, 16, 17, 18, 19, 20, 21, 36, 40, + 46, 53, 80, 177, 194, 199, 222, 223, 237, 275, + 278, 292, 295, 394, 502, 505, 506, 507, 509, 510, + 511, 512, 513, 514, 864, 865, 866, 868, 900, 481, + 840, 302, 824, 522, 702, 518, 548, 702, 3, 117, + 241, 548, 594, 808, 971, 104, 972, 972, 40, 546, + 519, 522, 957, 522, 519, 700, 920, 921, 40, 983, + 193, 355, 220, 639, 389, 689, 689, 30, 712, 713, + 824, 59, 689, 706, 164, 272, 733, 227, 273, 341, + 392, 454, 4, 9, 30, 728, 824, 509, 510, 729, + 730, 824, 826, 745, 746, 719, 718, 716, 717, 167, + 748, 285, 750, 59, 695, 696, 697, 761, 825, 904, + 904, 716, 745, 873, 932, 172, 469, 976, 236, 545, + 74, 82, 93, 169, 192, 329, 448, 546, 621, 631, + 646, 82, 93, 554, 93, 554, 518, 431, 518, 619, + 245, 451, 619, 93, 522, 431, 545, 3, 791, 594, + 59, 596, 594, 594, 106, 251, 261, 59, 431, 480, + 504, 593, 266, 373, 593, 595, 775, 93, 431, 554, + 373, 545, 431, 373, 989, 546, 676, 517, 523, 875, + 875, 876, 519, 522, 710, 711, 13, 14, 222, 222, + 431, 431, 546, 638, 643, 480, 679, 545, 380, 345, + 384, 419, 470, 665, 152, 100, 580, 604, 940, 941, + 1000, 144, 788, 275, 199, 585, 545, 275, 581, 592, + 275, 518, 639, 40, 275, 639, 275, 518, 659, 660, + 661, 662, 663, 664, 666, 192, 546, 633, 945, 552, + 152, 172, 599, 655, 551, 520, 930, 920, 923, 923, + 930, 519, 522, 13, 959, 965, 4, 926, 4, 926, + 548, 552, 678, 685, 55, 102, 123, 141, 145, 168, + 171, 187, 280, 288, 310, 339, 682, 40, 519, 824, + 519, 172, 522, 519, 318, 881, 519, 825, 825, 11, + 15, 16, 19, 20, 21, 199, 222, 292, 505, 506, + 507, 509, 510, 511, 512, 513, 514, 866, 825, 519, + 777, 778, 836, 167, 172, 884, 885, 522, 519, 40, + 886, 873, 886, 886, 172, 519, 40, 769, 518, 921, + 4, 9, 546, 720, 721, 723, 724, 829, 904, 902, + 178, 241, 419, 423, 425, 451, 545, 703, 477, 781, + 519, 758, 758, 225, 758, 290, 457, 774, 758, 225, + 904, 758, 758, 282, 282, 518, 758, 547, 782, 783, + 518, 547, 782, 522, 519, 522, 520, 518, 791, 518, + 518, 520, 39, 790, 518, 810, 811, 812, 813, 814, + 815, 816, 817, 818, 819, 820, 821, 822, 823, 519, + 522, 794, 555, 560, 667, 668, 686, 937, 982, 994, + 873, 874, 518, 476, 889, 890, 824, 874, 926, 824, + 859, 860, 861, 862, 806, 806, 8, 15, 16, 19, + 20, 21, 505, 506, 507, 509, 510, 511, 512, 513, + 514, 546, 864, 869, 519, 873, 429, 429, 926, 926, + 518, 518, 547, 907, 355, 914, 167, 517, 519, 522, + 523, 522, 528, 511, 824, 550, 873, 926, 824, 823, + 823, 788, 824, 824, 824, 824, 824, 824, 824, 824, + 5, 552, 934, 429, 45, 416, 901, 930, 824, 824, + 518, 687, 830, 887, 895, 132, 160, 275, 280, 285, + 438, 449, 824, 280, 518, 824, 431, 53, 177, 194, + 199, 237, 394, 824, 824, 824, 824, 824, 824, 824, + 824, 824, 824, 30, 38, 399, 863, 516, 520, 899, + 181, 163, 841, 368, 518, 855, 905, 172, 754, 875, + 754, 518, 548, 546, 545, 978, 545, 986, 824, 522, + 519, 250, 275, 701, 457, 985, 545, 557, 518, 546, + 562, 572, 573, 575, 41, 126, 714, 522, 457, 714, + 266, 689, 368, 369, 509, 510, 730, 732, 826, 392, + 227, 291, 313, 313, 522, 513, 4, 731, 926, 731, + 368, 369, 732, 545, 919, 279, 396, 751, 518, 921, + 922, 522, 181, 457, 199, 181, 220, 746, 717, 519, + 546, 548, 546, 548, 353, 541, 518, 192, 631, 923, + 227, 275, 227, 457, 518, 624, 787, 788, 923, 546, + 192, 923, 192, 546, 26, 137, 389, 537, 540, 552, + 615, 629, 923, 552, 623, 642, 923, 538, 923, 353, + 389, 541, 592, 594, 930, 923, 594, 930, 923, 594, + 353, 389, 541, 923, 923, 923, 923, 353, 389, 541, + 923, 923, 548, 510, 824, 896, 710, 710, 710, 466, + 876, 193, 358, 709, 824, 824, 280, 548, 952, 280, + 952, 546, 334, 675, 519, 522, 288, 172, 431, 670, + 939, 583, 470, 545, 545, 1004, 545, 545, 545, 295, + 650, 518, 687, 152, 3, 518, 518, 152, 152, 237, + 546, 621, 631, 634, 637, 647, 649, 480, 482, 626, + 151, 686, 152, 480, 946, 152, 519, 875, 522, 522, + 40, 275, 290, 546, 3, 656, 551, 656, 290, 656, + 588, 824, 676, 247, 511, 516, 518, 594, 677, 831, + 832, 833, 964, 519, 522, 40, 674, 548, 674, 275, + 280, 339, 674, 59, 674, 788, 519, 824, 824, 824, + 884, 788, 825, 825, 825, 825, 825, 825, 132, 275, + 285, 825, 825, 825, 825, 825, 825, 825, 825, 825, + 825, 519, 522, 40, 779, 824, 824, 885, 884, 788, + 519, 519, 519, 873, 788, 921, 519, 313, 369, 513, + 518, 518, 702, 423, 425, 423, 425, 545, 704, 704, + 704, 824, 181, 734, 774, 774, 758, 824, 518, 758, + 167, 774, 518, 547, 765, 774, 788, 519, 522, 782, + 519, 970, 3, 877, 39, 790, 546, 785, 785, 3, + 516, 516, 926, 431, 431, 431, 431, 788, 454, 519, + 517, 873, 824, 139, 890, 891, 519, 519, 519, 523, + 522, 528, 520, 519, 519, 501, 501, 519, 519, 824, + 907, 908, 909, 520, 518, 824, 911, 353, 918, 546, + 838, 893, 894, 824, 824, 856, 910, 519, 519, 519, + 501, 825, 825, 145, 873, 172, 132, 160, 280, 285, + 438, 449, 518, 145, 869, 824, 416, 901, 824, 887, + 824, 431, 518, 687, 824, 896, 551, 518, 518, 155, + 842, 755, 756, 781, 710, 781, 926, 823, 932, 932, + 250, 518, 756, 477, 984, 40, 59, 558, 568, 575, + 897, 522, 754, 507, 503, 715, 713, 292, 864, 867, + 715, 4, 926, 732, 291, 454, 729, 522, 244, 921, + 695, 59, 904, 518, 547, 59, 266, 976, 976, 431, + 824, 275, 646, 518, 152, 518, 624, 203, 643, 644, + 605, 40, 176, 614, 640, 605, 26, 137, 357, 359, + 389, 534, 535, 536, 542, 543, 152, 656, 152, 656, + 615, 629, 615, 519, 522, 548, 608, 507, 520, 519, + 522, 431, 373, 93, 431, 554, 373, 431, 431, 431, + 373, 990, 523, 517, 523, 709, 709, 709, 876, 282, + 282, 519, 518, 669, 3, 406, 407, 548, 684, 638, + 675, 585, 545, 581, 518, 40, 639, 662, 664, 939, + 355, 419, 548, 577, 578, 583, 685, 643, 545, 545, + 1004, 545, 519, 522, 288, 619, 288, 290, 618, 923, + 480, 1003, 545, 619, 40, 545, 519, 660, 666, 663, + 666, 419, 824, 152, 545, 599, 930, 672, 683, 964, + 678, 548, 548, 280, 643, 511, 643, 548, 511, 643, + 548, 519, 519, 885, 172, 132, 285, 518, 780, 777, + 518, 519, 519, 519, 546, 721, 781, 704, 704, 704, + 704, 545, 545, 545, 59, 186, 743, 774, 921, 518, + 762, 763, 764, 827, 830, 921, 167, 80, 784, 783, + 519, 519, 516, 788, 519, 522, 519, 926, 517, 926, + 519, 811, 813, 814, 815, 814, 815, 815, 519, 427, + 824, 143, 824, 859, 869, 809, 809, 519, 522, 519, + 547, 824, 911, 912, 913, 40, 518, 907, 915, 199, + 522, 519, 914, 823, 824, 36, 36, 824, 519, 824, + 172, 518, 877, 824, 519, 145, 825, 825, 145, 145, + 824, 824, 517, 523, 518, 898, 711, 477, 824, 301, + 846, 522, 734, 709, 734, 519, 937, 824, 361, 566, + 546, 266, 321, 117, 304, 518, 556, 686, 519, 522, + 562, 984, 824, 164, 231, 518, 715, 291, 545, 519, + 922, 181, 687, 688, 904, 922, 923, 923, 519, 152, + 644, 631, 644, 605, 633, 522, 519, 119, 207, 273, + 275, 630, 518, 33, 59, 651, 640, 74, 80, 93, + 117, 119, 207, 275, 280, 329, 347, 448, 457, 610, + 611, 625, 176, 117, 191, 275, 619, 593, 107, 117, + 176, 275, 405, 408, 595, 619, 389, 536, 442, 923, + 546, 540, 3, 37, 42, 49, 55, 81, 83, 89, + 101, 171, 173, 176, 177, 194, 209, 222, 223, 225, + 235, 237, 247, 269, 274, 278, 292, 300, 302, 322, + 364, 383, 390, 394, 412, 421, 441, 447, 468, 509, + 510, 548, 594, 606, 645, 788, 867, 927, 1005, 1011, + 552, 642, 923, 923, 923, 923, 923, 923, 923, 923, + 923, 923, 676, 896, 896, 519, 519, 519, 710, 107, + 373, 520, 593, 684, 518, 518, 637, 686, 946, 650, + 192, 545, 519, 522, 585, 519, 519, 581, 518, 40, + 628, 626, 634, 86, 590, 107, 273, 639, 686, 662, + 664, 40, 40, 687, 688, 633, 457, 943, 656, 519, + 522, 643, 825, 172, 518, 877, 782, 519, 522, 519, + 734, 545, 545, 545, 545, 30, 103, 182, 367, 518, + 735, 736, 737, 738, 739, 740, 741, 824, 824, 479, + 843, 519, 826, 870, 871, 199, 181, 759, 763, 519, + 765, 766, 767, 930, 790, 926, 790, 546, 790, 517, + 517, 824, 907, 522, 519, 546, 915, 916, 917, 40, + 824, 826, 894, 918, 824, 824, 824, 877, 519, 824, + 36, 36, 824, 824, 145, 519, 510, 896, 519, 875, + 519, 824, 519, 518, 546, 847, 743, 519, 743, 548, + 519, 903, 463, 418, 456, 567, 546, 561, 571, 290, + 564, 507, 575, 566, 869, 59, 519, 519, 462, 463, + 692, 605, 631, 519, 519, 480, 636, 120, 195, 205, + 119, 459, 824, 117, 40, 518, 930, 923, 825, 120, + 195, 119, 280, 227, 545, 636, 88, 651, 192, 280, + 594, 824, 651, 280, 509, 510, 597, 546, 787, 788, + 656, 656, 3, 247, 412, 927, 931, 507, 431, 431, + 517, 517, 709, 519, 519, 546, 676, 457, 671, 673, + 685, 643, 519, 1003, 40, 419, 275, 518, 548, 518, + 946, 637, 151, 686, 149, 201, 618, 122, 137, 328, + 1003, 107, 946, 480, 1001, 419, 290, 546, 942, 518, + 683, 825, 877, 519, 519, 9, 354, 727, 743, 518, + 391, 518, 519, 522, 546, 844, 845, 336, 744, 522, + 519, 518, 547, 59, 519, 199, 519, 766, 517, 788, + 911, 522, 519, 546, 517, 192, 519, 824, 824, 824, + 523, 517, 523, 519, 519, 546, 848, 843, 548, 843, + 522, 462, 897, 519, 522, 91, 566, 824, 519, 922, + 922, 347, 636, 518, 627, 605, 519, 191, 518, 824, + 275, 611, 636, 639, 923, 40, 152, 784, 931, 513, + 606, 923, 923, 519, 593, 124, 519, 519, 626, 686, + 545, 152, 685, 40, 519, 923, 1003, 30, 85, 94, + 118, 191, 204, 405, 408, 622, 622, 369, 369, 40, + 64, 74, 241, 687, 545, 518, 546, 565, 574, 836, + 519, 519, 518, 843, 873, 518, 873, 737, 40, 522, + 824, 457, 722, 826, 904, 921, 770, 518, 770, 915, + 824, 896, 896, 310, 849, 744, 744, 686, 304, 686, + 561, 290, 518, 559, 545, 605, 552, 632, 635, 409, + 472, 612, 613, 518, 607, 824, 519, 249, 648, 191, + 457, 539, 513, 442, 676, 548, 946, 618, 1001, 518, + 545, 519, 686, 626, 590, 686, 74, 293, 74, 943, + 824, 80, 569, 519, 522, 569, 9, 744, 519, 736, + 519, 847, 845, 371, 519, 904, 517, 517, 517, 59, + 710, 722, 722, 567, 93, 574, 133, 639, 507, 519, + 522, 592, 519, 273, 620, 173, 309, 395, 290, 616, + 617, 641, 607, 824, 442, 40, 518, 1001, 618, 1003, + 1001, 293, 293, 518, 519, 930, 570, 930, 946, 565, + 570, 519, 722, 519, 724, 519, 872, 184, 340, 369, + 850, 462, 923, 519, 276, 454, 648, 606, 635, 519, + 613, 205, 122, 454, 290, 641, 290, 616, 686, 574, + 569, 714, 781, 714, 53, 104, 444, 824, 851, 852, + 851, 851, 519, 686, 781, 389, 617, 63, 273, 360, + 389, 609, 609, 1001, 519, 570, 715, 715, 852, 368, + 166, 324, 166, 324, 148, 853, 853, 853, 573, 605, + 25, 117, 280, 946, 714, 36, 104, 181, 273, 428, + 781, 781, 715, 852, 368, 298 }; #define yyerrok (yyerrstatus = 0) @@ -28078,6 +28080,15 @@ YYLTYPE yylloc; case 1050: #line 2898 "third_party/libpg_query/grammar/statements/select.y" + { + PGFuncCall *n = makeFuncCall((yyvsp[(1) - (4)].list), NIL, (yylsp[(1) - (4)])); + n->agg_order = (yyvsp[(3) - (4)].list); + (yyval.node) = (PGNode *)n; + ;} + break; + + case 1051: +#line 2904 "third_party/libpg_query/grammar/statements/select.y" { PGFuncCall *n = makeFuncCall((yyvsp[(1) - (6)].list), (yyvsp[(3) - (6)].list), (yylsp[(1) - (6)])); n->agg_order = (yyvsp[(4) - (6)].list); @@ -28086,8 +28097,8 @@ YYLTYPE yylloc; ;} break; - case 1051: -#line 2905 "third_party/libpg_query/grammar/statements/select.y" + case 1052: +#line 2911 "third_party/libpg_query/grammar/statements/select.y" { PGFuncCall *n = makeFuncCall((yyvsp[(1) - (7)].list), list_make1((yyvsp[(4) - (7)].node)), (yylsp[(1) - (7)])); n->func_variadic = true; @@ -28097,8 +28108,8 @@ YYLTYPE yylloc; ;} break; - case 1052: -#line 2913 "third_party/libpg_query/grammar/statements/select.y" + case 1053: +#line 2919 "third_party/libpg_query/grammar/statements/select.y" { PGFuncCall *n = makeFuncCall((yyvsp[(1) - (9)].list), lappend((yyvsp[(3) - (9)].list), (yyvsp[(6) - (9)].node)), (yylsp[(1) - (9)])); n->func_variadic = true; @@ -28108,8 +28119,8 @@ YYLTYPE yylloc; ;} break; - case 1053: -#line 2921 "third_party/libpg_query/grammar/statements/select.y" + case 1054: +#line 2927 "third_party/libpg_query/grammar/statements/select.y" { PGFuncCall *n = makeFuncCall((yyvsp[(1) - (7)].list), (yyvsp[(4) - (7)].list), (yylsp[(1) - (7)])); n->agg_order = (yyvsp[(5) - (7)].list); @@ -28122,8 +28133,8 @@ YYLTYPE yylloc; ;} break; - case 1054: -#line 2932 "third_party/libpg_query/grammar/statements/select.y" + case 1055: +#line 2938 "third_party/libpg_query/grammar/statements/select.y" { PGFuncCall *n = makeFuncCall((yyvsp[(1) - (7)].list), (yyvsp[(4) - (7)].list), (yylsp[(1) - (7)])); n->agg_order = (yyvsp[(5) - (7)].list); @@ -28133,8 +28144,8 @@ YYLTYPE yylloc; ;} break; - case 1055: -#line 2952 "third_party/libpg_query/grammar/statements/select.y" + case 1056: +#line 2958 "third_party/libpg_query/grammar/statements/select.y" { PGFuncCall *n = (PGFuncCall *) (yyvsp[(1) - (5)].node); /* @@ -28169,26 +28180,26 @@ YYLTYPE yylloc; n->export_state = (yyvsp[(4) - (5)].boolean); n->over = (yyvsp[(5) - (5)].windef); (yyval.node) = (PGNode *) n; - ;} - break; - - case 1056: -#line 2988 "third_party/libpg_query/grammar/statements/select.y" - { (yyval.node) = (yyvsp[(1) - (1)].node); ;} + ;} break; case 1057: -#line 2998 "third_party/libpg_query/grammar/statements/select.y" +#line 2994 "third_party/libpg_query/grammar/statements/select.y" { (yyval.node) = (yyvsp[(1) - (1)].node); ;} break; case 1058: -#line 2999 "third_party/libpg_query/grammar/statements/select.y" +#line 3004 "third_party/libpg_query/grammar/statements/select.y" { (yyval.node) = (yyvsp[(1) - (1)].node); ;} break; case 1059: -#line 3007 "third_party/libpg_query/grammar/statements/select.y" +#line 3005 "third_party/libpg_query/grammar/statements/select.y" + { (yyval.node) = (yyvsp[(1) - (1)].node); ;} + break; + + case 1060: +#line 3013 "third_party/libpg_query/grammar/statements/select.y" { (yyval.node) = (PGNode *) makeFuncCall(SystemFuncName("pg_collation_for"), list_make1((yyvsp[(4) - (5)].node)), @@ -28196,25 +28207,25 @@ YYLTYPE yylloc; ;} break; - case 1060: -#line 3013 "third_party/libpg_query/grammar/statements/select.y" + case 1061: +#line 3019 "third_party/libpg_query/grammar/statements/select.y" { (yyval.node) = makeTypeCast((yyvsp[(3) - (6)].node), (yyvsp[(5) - (6)].typnam), 0, (yylsp[(1) - (6)])); ;} break; - case 1061: -#line 3015 "third_party/libpg_query/grammar/statements/select.y" + case 1062: +#line 3021 "third_party/libpg_query/grammar/statements/select.y" { (yyval.node) = makeTypeCast((yyvsp[(3) - (6)].node), (yyvsp[(5) - (6)].typnam), 1, (yylsp[(1) - (6)])); ;} break; - case 1062: -#line 3017 "third_party/libpg_query/grammar/statements/select.y" + case 1063: +#line 3023 "third_party/libpg_query/grammar/statements/select.y" { (yyval.node) = (PGNode *) makeFuncCall(SystemFuncName("date_part"), (yyvsp[(3) - (4)].list), (yylsp[(1) - (4)])); ;} break; - case 1063: -#line 3021 "third_party/libpg_query/grammar/statements/select.y" + case 1064: +#line 3027 "third_party/libpg_query/grammar/statements/select.y" { /* overlay(A PLACING B FROM C FOR D) is converted to * overlay(A, B, C, D) @@ -28225,16 +28236,16 @@ YYLTYPE yylloc; ;} break; - case 1064: -#line 3030 "third_party/libpg_query/grammar/statements/select.y" + case 1065: +#line 3036 "third_party/libpg_query/grammar/statements/select.y" { /* position(A in B) is converted to position_inverse(A, B) */ (yyval.node) = (PGNode *) makeFuncCall(SystemFuncName("__internal_position_operator"), (yyvsp[(3) - (4)].list), (yylsp[(1) - (4)])); ;} break; - case 1065: -#line 3035 "third_party/libpg_query/grammar/statements/select.y" + case 1066: +#line 3041 "third_party/libpg_query/grammar/statements/select.y" { /* substring(A from B for C) is converted to * substring(A, B, C) - thomas 2000-11-28 @@ -28243,8 +28254,8 @@ YYLTYPE yylloc; ;} break; - case 1066: -#line 3042 "third_party/libpg_query/grammar/statements/select.y" + case 1067: +#line 3048 "third_party/libpg_query/grammar/statements/select.y" { /* TREAT(expr AS target) converts expr of a particular type to target, * which is defined to be a subtype of the original expression. @@ -28261,8 +28272,8 @@ YYLTYPE yylloc; ;} break; - case 1067: -#line 3057 "third_party/libpg_query/grammar/statements/select.y" + case 1068: +#line 3063 "third_party/libpg_query/grammar/statements/select.y" { /* various trim expressions are defined in SQL * - thomas 1997-07-19 @@ -28271,36 +28282,36 @@ YYLTYPE yylloc; ;} break; - case 1068: -#line 3064 "third_party/libpg_query/grammar/statements/select.y" + case 1069: +#line 3070 "third_party/libpg_query/grammar/statements/select.y" { (yyval.node) = (PGNode *) makeFuncCall(SystemFuncName("ltrim"), (yyvsp[(4) - (5)].list), (yylsp[(1) - (5)])); ;} break; - case 1069: -#line 3068 "third_party/libpg_query/grammar/statements/select.y" + case 1070: +#line 3074 "third_party/libpg_query/grammar/statements/select.y" { (yyval.node) = (PGNode *) makeFuncCall(SystemFuncName("rtrim"), (yyvsp[(4) - (5)].list), (yylsp[(1) - (5)])); ;} break; - case 1070: -#line 3072 "third_party/libpg_query/grammar/statements/select.y" + case 1071: +#line 3078 "third_party/libpg_query/grammar/statements/select.y" { (yyval.node) = (PGNode *) makeFuncCall(SystemFuncName("trim"), (yyvsp[(3) - (4)].list), (yylsp[(1) - (4)])); ;} break; - case 1071: -#line 3076 "third_party/libpg_query/grammar/statements/select.y" + case 1072: +#line 3082 "third_party/libpg_query/grammar/statements/select.y" { (yyval.node) = (PGNode *) makeSimpleAExpr(PG_AEXPR_NULLIF, "=", (yyvsp[(3) - (6)].node), (yyvsp[(5) - (6)].node), (yylsp[(1) - (6)])); ;} break; - case 1072: -#line 3080 "third_party/libpg_query/grammar/statements/select.y" + case 1073: +#line 3086 "third_party/libpg_query/grammar/statements/select.y" { PGCoalesceExpr *c = makeNode(PGCoalesceExpr); c->args = (yyvsp[(3) - (4)].list); @@ -28309,16 +28320,16 @@ YYLTYPE yylloc; ;} break; - case 1073: -#line 3090 "third_party/libpg_query/grammar/statements/select.y" + case 1074: +#line 3096 "third_party/libpg_query/grammar/statements/select.y" { PGFuncCall *n = makeFuncCall(SystemFuncName("row"), (yyvsp[(1) - (1)].list), (yylsp[(1) - (1)])); (yyval.node) = (PGNode *) n; ;} break; - case 1074: -#line 3098 "third_party/libpg_query/grammar/statements/select.y" + case 1075: +#line 3104 "third_party/libpg_query/grammar/statements/select.y" { PGLambdaFunction *lambda = makeNode(PGLambdaFunction); lambda->lhs = (yyvsp[(4) - (7)].node); @@ -28329,8 +28340,8 @@ YYLTYPE yylloc; ;} break; - case 1075: -#line 3107 "third_party/libpg_query/grammar/statements/select.y" + case 1076: +#line 3113 "third_party/libpg_query/grammar/statements/select.y" { PGLambdaFunction *lambda = makeNode(PGLambdaFunction); lambda->lhs = (yyvsp[(4) - (9)].node); @@ -28347,63 +28358,63 @@ YYLTYPE yylloc; ;} break; - case 1076: -#line 3128 "third_party/libpg_query/grammar/statements/select.y" + case 1077: +#line 3134 "third_party/libpg_query/grammar/statements/select.y" { (yyval.list) = (yyvsp[(4) - (5)].list); ;} break; - case 1077: -#line 3129 "third_party/libpg_query/grammar/statements/select.y" + case 1078: +#line 3135 "third_party/libpg_query/grammar/statements/select.y" { (yyval.list) = NIL; ;} break; - case 1078: -#line 3133 "third_party/libpg_query/grammar/statements/select.y" + case 1079: +#line 3139 "third_party/libpg_query/grammar/statements/select.y" { (yyval.node) = (yyvsp[(4) - (5)].node); ;} break; - case 1079: -#line 3134 "third_party/libpg_query/grammar/statements/select.y" + case 1080: +#line 3140 "third_party/libpg_query/grammar/statements/select.y" { (yyval.node) = (yyvsp[(3) - (4)].node); ;} break; - case 1080: -#line 3135 "third_party/libpg_query/grammar/statements/select.y" + case 1081: +#line 3141 "third_party/libpg_query/grammar/statements/select.y" { (yyval.node) = NULL; ;} break; - case 1081: -#line 3139 "third_party/libpg_query/grammar/statements/select.y" + case 1082: +#line 3145 "third_party/libpg_query/grammar/statements/select.y" { (yyval.boolean) = true; ;} break; - case 1082: -#line 3140 "third_party/libpg_query/grammar/statements/select.y" + case 1083: +#line 3146 "third_party/libpg_query/grammar/statements/select.y" { (yyval.boolean) = false; ;} break; - case 1083: -#line 3147 "third_party/libpg_query/grammar/statements/select.y" + case 1084: +#line 3153 "third_party/libpg_query/grammar/statements/select.y" { (yyval.list) = (yyvsp[(2) - (2)].list); ;} break; - case 1084: -#line 3148 "third_party/libpg_query/grammar/statements/select.y" + case 1085: +#line 3154 "third_party/libpg_query/grammar/statements/select.y" { (yyval.list) = NIL; ;} break; - case 1085: -#line 3152 "third_party/libpg_query/grammar/statements/select.y" + case 1086: +#line 3158 "third_party/libpg_query/grammar/statements/select.y" { (yyval.list) = list_make1((yyvsp[(1) - (1)].windef)); ;} break; - case 1086: -#line 3154 "third_party/libpg_query/grammar/statements/select.y" + case 1087: +#line 3160 "third_party/libpg_query/grammar/statements/select.y" { (yyval.list) = lappend((yyvsp[(1) - (3)].list), (yyvsp[(3) - (3)].windef)); ;} break; - case 1087: -#line 3159 "third_party/libpg_query/grammar/statements/select.y" + case 1088: +#line 3165 "third_party/libpg_query/grammar/statements/select.y" { PGWindowDef *n = (yyvsp[(3) - (3)].windef); n->name = (yyvsp[(1) - (3)].str); @@ -28411,13 +28422,13 @@ YYLTYPE yylloc; ;} break; - case 1088: -#line 3167 "third_party/libpg_query/grammar/statements/select.y" + case 1089: +#line 3173 "third_party/libpg_query/grammar/statements/select.y" { (yyval.windef) = (yyvsp[(2) - (2)].windef); ;} break; - case 1089: -#line 3169 "third_party/libpg_query/grammar/statements/select.y" + case 1090: +#line 3175 "third_party/libpg_query/grammar/statements/select.y" { PGWindowDef *n = makeNode(PGWindowDef); n->name = (yyvsp[(2) - (2)].str); @@ -28432,13 +28443,13 @@ YYLTYPE yylloc; ;} break; - case 1090: -#line 3182 "third_party/libpg_query/grammar/statements/select.y" + case 1091: +#line 3188 "third_party/libpg_query/grammar/statements/select.y" { (yyval.windef) = NULL; ;} break; - case 1091: -#line 3187 "third_party/libpg_query/grammar/statements/select.y" + case 1092: +#line 3193 "third_party/libpg_query/grammar/statements/select.y" { PGWindowDef *n = makeNode(PGWindowDef); n->name = NULL; @@ -28454,28 +28465,28 @@ YYLTYPE yylloc; ;} break; - case 1092: -#line 3212 "third_party/libpg_query/grammar/statements/select.y" + case 1093: +#line 3218 "third_party/libpg_query/grammar/statements/select.y" { (yyval.str) = (yyvsp[(1) - (1)].str); ;} break; - case 1093: -#line 3213 "third_party/libpg_query/grammar/statements/select.y" + case 1094: +#line 3219 "third_party/libpg_query/grammar/statements/select.y" { (yyval.str) = NULL; ;} break; - case 1094: -#line 3216 "third_party/libpg_query/grammar/statements/select.y" + case 1095: +#line 3222 "third_party/libpg_query/grammar/statements/select.y" { (yyval.list) = (yyvsp[(3) - (3)].list); ;} break; - case 1095: -#line 3217 "third_party/libpg_query/grammar/statements/select.y" + case 1096: +#line 3223 "third_party/libpg_query/grammar/statements/select.y" { (yyval.list) = NIL; ;} break; - case 1096: -#line 3226 "third_party/libpg_query/grammar/statements/select.y" + case 1097: +#line 3232 "third_party/libpg_query/grammar/statements/select.y" { PGWindowDef *n = (yyvsp[(2) - (3)].windef); @@ -28485,8 +28496,8 @@ YYLTYPE yylloc; ;} break; - case 1097: -#line 3234 "third_party/libpg_query/grammar/statements/select.y" + case 1098: +#line 3240 "third_party/libpg_query/grammar/statements/select.y" { PGWindowDef *n = (yyvsp[(2) - (3)].windef); @@ -28496,8 +28507,8 @@ YYLTYPE yylloc; ;} break; - case 1098: -#line 3242 "third_party/libpg_query/grammar/statements/select.y" + case 1099: +#line 3248 "third_party/libpg_query/grammar/statements/select.y" { PGWindowDef *n = (yyvsp[(2) - (3)].windef); @@ -28507,8 +28518,8 @@ YYLTYPE yylloc; ;} break; - case 1099: -#line 3250 "third_party/libpg_query/grammar/statements/select.y" + case 1100: +#line 3256 "third_party/libpg_query/grammar/statements/select.y" { PGWindowDef *n = makeNode(PGWindowDef); @@ -28519,8 +28530,8 @@ YYLTYPE yylloc; ;} break; - case 1100: -#line 3261 "third_party/libpg_query/grammar/statements/select.y" + case 1101: +#line 3267 "third_party/libpg_query/grammar/statements/select.y" { PGWindowDef *n = (yyvsp[(1) - (1)].windef); @@ -28540,8 +28551,8 @@ YYLTYPE yylloc; ;} break; - case 1101: -#line 3279 "third_party/libpg_query/grammar/statements/select.y" + case 1102: +#line 3285 "third_party/libpg_query/grammar/statements/select.y" { PGWindowDef *n1 = (yyvsp[(2) - (4)].windef); PGWindowDef *n2 = (yyvsp[(4) - (4)].windef); @@ -28581,8 +28592,8 @@ YYLTYPE yylloc; ;} break; - case 1102: -#line 3325 "third_party/libpg_query/grammar/statements/select.y" + case 1103: +#line 3331 "third_party/libpg_query/grammar/statements/select.y" { PGWindowDef *n = makeNode(PGWindowDef); @@ -28593,8 +28604,8 @@ YYLTYPE yylloc; ;} break; - case 1103: -#line 3334 "third_party/libpg_query/grammar/statements/select.y" + case 1104: +#line 3340 "third_party/libpg_query/grammar/statements/select.y" { PGWindowDef *n = makeNode(PGWindowDef); @@ -28605,8 +28616,8 @@ YYLTYPE yylloc; ;} break; - case 1104: -#line 3343 "third_party/libpg_query/grammar/statements/select.y" + case 1105: +#line 3349 "third_party/libpg_query/grammar/statements/select.y" { PGWindowDef *n = makeNode(PGWindowDef); @@ -28617,8 +28628,8 @@ YYLTYPE yylloc; ;} break; - case 1105: -#line 3352 "third_party/libpg_query/grammar/statements/select.y" + case 1106: +#line 3358 "third_party/libpg_query/grammar/statements/select.y" { PGWindowDef *n = makeNode(PGWindowDef); @@ -28629,8 +28640,8 @@ YYLTYPE yylloc; ;} break; - case 1106: -#line 3361 "third_party/libpg_query/grammar/statements/select.y" + case 1107: +#line 3367 "third_party/libpg_query/grammar/statements/select.y" { PGWindowDef *n = makeNode(PGWindowDef); @@ -28641,53 +28652,53 @@ YYLTYPE yylloc; ;} break; - case 1107: -#line 3372 "third_party/libpg_query/grammar/statements/select.y" + case 1108: +#line 3378 "third_party/libpg_query/grammar/statements/select.y" { (yyval.ival) = FRAMEOPTION_EXCLUDE_CURRENT_ROW; ;} break; - case 1108: -#line 3373 "third_party/libpg_query/grammar/statements/select.y" + case 1109: +#line 3379 "third_party/libpg_query/grammar/statements/select.y" { (yyval.ival) = FRAMEOPTION_EXCLUDE_GROUP; ;} break; - case 1109: -#line 3374 "third_party/libpg_query/grammar/statements/select.y" + case 1110: +#line 3380 "third_party/libpg_query/grammar/statements/select.y" { (yyval.ival) = FRAMEOPTION_EXCLUDE_TIES; ;} break; - case 1110: -#line 3375 "third_party/libpg_query/grammar/statements/select.y" + case 1111: +#line 3381 "third_party/libpg_query/grammar/statements/select.y" { (yyval.ival) = 0; ;} break; - case 1111: -#line 3376 "third_party/libpg_query/grammar/statements/select.y" + case 1112: +#line 3382 "third_party/libpg_query/grammar/statements/select.y" { (yyval.ival) = 0; ;} break; - case 1112: -#line 3390 "third_party/libpg_query/grammar/statements/select.y" + case 1113: +#line 3396 "third_party/libpg_query/grammar/statements/select.y" { (yyval.list) = (yyvsp[(3) - (4)].list); ;} break; - case 1113: -#line 3391 "third_party/libpg_query/grammar/statements/select.y" + case 1114: +#line 3397 "third_party/libpg_query/grammar/statements/select.y" { (yyval.list) = NIL; ;} break; - case 1114: -#line 3394 "third_party/libpg_query/grammar/statements/select.y" + case 1115: +#line 3400 "third_party/libpg_query/grammar/statements/select.y" { (yyval.list) = (yyvsp[(1) - (1)].list);;} break; - case 1115: -#line 3395 "third_party/libpg_query/grammar/statements/select.y" + case 1116: +#line 3401 "third_party/libpg_query/grammar/statements/select.y" { (yyval.list) = lappend((yyvsp[(2) - (5)].list), (yyvsp[(4) - (5)].node)); ;} break; - case 1116: -#line 3399 "third_party/libpg_query/grammar/statements/select.y" + case 1117: +#line 3405 "third_party/libpg_query/grammar/statements/select.y" { PGNamedArgExpr *na = makeNode(PGNamedArgExpr); na->name = (yyvsp[(1) - (3)].str); @@ -28698,321 +28709,321 @@ YYLTYPE yylloc; ;} break; - case 1117: -#line 3409 "third_party/libpg_query/grammar/statements/select.y" + case 1118: +#line 3415 "third_party/libpg_query/grammar/statements/select.y" { (yyval.list) = list_make1((yyvsp[(1) - (1)].node)); ;} break; - case 1118: -#line 3410 "third_party/libpg_query/grammar/statements/select.y" + case 1119: +#line 3416 "third_party/libpg_query/grammar/statements/select.y" { (yyval.list) = lappend((yyvsp[(1) - (3)].list), (yyvsp[(3) - (3)].node)); ;} break; - case 1119: -#line 3414 "third_party/libpg_query/grammar/statements/select.y" + case 1120: +#line 3420 "third_party/libpg_query/grammar/statements/select.y" { (yyval.list) = (yyvsp[(1) - (1)].list); ;} break; - case 1120: -#line 3415 "third_party/libpg_query/grammar/statements/select.y" + case 1121: +#line 3421 "third_party/libpg_query/grammar/statements/select.y" { (yyval.list) = (yyvsp[(1) - (2)].list); ;} break; - case 1121: -#line 3420 "third_party/libpg_query/grammar/statements/select.y" + case 1122: +#line 3426 "third_party/libpg_query/grammar/statements/select.y" { (yyval.list) = list_make2((yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node)); ;} break; - case 1122: -#line 3426 "third_party/libpg_query/grammar/statements/select.y" + case 1123: +#line 3432 "third_party/libpg_query/grammar/statements/select.y" { (yyval.list) = list_make1((yyvsp[(1) - (1)].list)); ;} break; - case 1123: -#line 3427 "third_party/libpg_query/grammar/statements/select.y" + case 1124: +#line 3433 "third_party/libpg_query/grammar/statements/select.y" { (yyval.list) = lappend((yyvsp[(1) - (3)].list), (yyvsp[(3) - (3)].list)); ;} break; - case 1124: -#line 3432 "third_party/libpg_query/grammar/statements/select.y" + case 1125: +#line 3438 "third_party/libpg_query/grammar/statements/select.y" { (yyval.list) = (yyvsp[(1) - (1)].list); ;} break; - case 1125: -#line 3433 "third_party/libpg_query/grammar/statements/select.y" + case 1126: +#line 3439 "third_party/libpg_query/grammar/statements/select.y" { (yyval.list) = (yyvsp[(1) - (2)].list); ;} break; - case 1126: -#line 3438 "third_party/libpg_query/grammar/statements/select.y" + case 1127: +#line 3444 "third_party/libpg_query/grammar/statements/select.y" { (yyval.list) = (yyvsp[(1) - (1)].list); ;} break; - case 1127: -#line 3439 "third_party/libpg_query/grammar/statements/select.y" + case 1128: +#line 3445 "third_party/libpg_query/grammar/statements/select.y" { (yyval.list) = NULL; ;} break; - case 1128: -#line 3442 "third_party/libpg_query/grammar/statements/select.y" + case 1129: +#line 3448 "third_party/libpg_query/grammar/statements/select.y" { (yyval.subquerytype) = PG_ANY_SUBLINK; ;} break; - case 1129: -#line 3443 "third_party/libpg_query/grammar/statements/select.y" + case 1130: +#line 3449 "third_party/libpg_query/grammar/statements/select.y" { (yyval.subquerytype) = PG_ANY_SUBLINK; ;} break; - case 1130: -#line 3444 "third_party/libpg_query/grammar/statements/select.y" + case 1131: +#line 3450 "third_party/libpg_query/grammar/statements/select.y" { (yyval.subquerytype) = PG_ALL_SUBLINK; ;} break; - case 1131: -#line 3447 "third_party/libpg_query/grammar/statements/select.y" + case 1132: +#line 3453 "third_party/libpg_query/grammar/statements/select.y" { (yyval.str) = (yyvsp[(1) - (1)].str); ;} break; - case 1132: -#line 3448 "third_party/libpg_query/grammar/statements/select.y" + case 1133: +#line 3454 "third_party/libpg_query/grammar/statements/select.y" { (yyval.str) = (char*) (yyvsp[(1) - (1)].conststr); ;} break; - case 1133: -#line 3451 "third_party/libpg_query/grammar/statements/select.y" + case 1134: +#line 3457 "third_party/libpg_query/grammar/statements/select.y" { (yyval.conststr) = "+"; ;} break; - case 1134: -#line 3452 "third_party/libpg_query/grammar/statements/select.y" + case 1135: +#line 3458 "third_party/libpg_query/grammar/statements/select.y" { (yyval.conststr) = "-"; ;} break; - case 1135: -#line 3453 "third_party/libpg_query/grammar/statements/select.y" + case 1136: +#line 3459 "third_party/libpg_query/grammar/statements/select.y" { (yyval.conststr) = "*"; ;} break; - case 1136: -#line 3454 "third_party/libpg_query/grammar/statements/select.y" + case 1137: +#line 3460 "third_party/libpg_query/grammar/statements/select.y" { (yyval.conststr) = "/"; ;} break; - case 1137: -#line 3455 "third_party/libpg_query/grammar/statements/select.y" + case 1138: +#line 3461 "third_party/libpg_query/grammar/statements/select.y" { (yyval.conststr) = "//"; ;} break; - case 1138: -#line 3456 "third_party/libpg_query/grammar/statements/select.y" + case 1139: +#line 3462 "third_party/libpg_query/grammar/statements/select.y" { (yyval.conststr) = "%"; ;} break; - case 1139: -#line 3457 "third_party/libpg_query/grammar/statements/select.y" + case 1140: +#line 3463 "third_party/libpg_query/grammar/statements/select.y" { (yyval.conststr) = "^"; ;} break; - case 1140: -#line 3458 "third_party/libpg_query/grammar/statements/select.y" + case 1141: +#line 3464 "third_party/libpg_query/grammar/statements/select.y" { (yyval.conststr) = "**"; ;} break; - case 1141: -#line 3459 "third_party/libpg_query/grammar/statements/select.y" + case 1142: +#line 3465 "third_party/libpg_query/grammar/statements/select.y" { (yyval.conststr) = "<"; ;} break; - case 1142: -#line 3460 "third_party/libpg_query/grammar/statements/select.y" + case 1143: +#line 3466 "third_party/libpg_query/grammar/statements/select.y" { (yyval.conststr) = ">"; ;} break; - case 1143: -#line 3461 "third_party/libpg_query/grammar/statements/select.y" + case 1144: +#line 3467 "third_party/libpg_query/grammar/statements/select.y" { (yyval.conststr) = "="; ;} break; - case 1144: -#line 3462 "third_party/libpg_query/grammar/statements/select.y" + case 1145: +#line 3468 "third_party/libpg_query/grammar/statements/select.y" { (yyval.conststr) = "<="; ;} break; - case 1145: -#line 3463 "third_party/libpg_query/grammar/statements/select.y" + case 1146: +#line 3469 "third_party/libpg_query/grammar/statements/select.y" { (yyval.conststr) = ">="; ;} break; - case 1146: -#line 3464 "third_party/libpg_query/grammar/statements/select.y" + case 1147: +#line 3470 "third_party/libpg_query/grammar/statements/select.y" { (yyval.conststr) = "<>"; ;} break; - case 1147: -#line 3468 "third_party/libpg_query/grammar/statements/select.y" + case 1148: +#line 3474 "third_party/libpg_query/grammar/statements/select.y" { (yyval.list) = list_make1(makeString((yyvsp[(1) - (1)].str))); ;} break; - case 1148: -#line 3470 "third_party/libpg_query/grammar/statements/select.y" + case 1149: +#line 3476 "third_party/libpg_query/grammar/statements/select.y" { (yyval.list) = (yyvsp[(3) - (4)].list); ;} break; - case 1149: -#line 3475 "third_party/libpg_query/grammar/statements/select.y" + case 1150: +#line 3481 "third_party/libpg_query/grammar/statements/select.y" { (yyval.list) = list_make1(makeString((yyvsp[(1) - (1)].str))); ;} break; - case 1150: -#line 3477 "third_party/libpg_query/grammar/statements/select.y" + case 1151: +#line 3483 "third_party/libpg_query/grammar/statements/select.y" { (yyval.list) = (yyvsp[(3) - (4)].list); ;} break; - case 1151: -#line 3482 "third_party/libpg_query/grammar/statements/select.y" + case 1152: +#line 3488 "third_party/libpg_query/grammar/statements/select.y" { (yyval.list) = list_make1(makeString((yyvsp[(1) - (1)].str))); ;} break; - case 1152: -#line 3484 "third_party/libpg_query/grammar/statements/select.y" + case 1153: +#line 3490 "third_party/libpg_query/grammar/statements/select.y" { (yyval.list) = (yyvsp[(3) - (4)].list); ;} break; - case 1153: -#line 3486 "third_party/libpg_query/grammar/statements/select.y" + case 1154: +#line 3492 "third_party/libpg_query/grammar/statements/select.y" { (yyval.list) = list_make1(makeString("~~")); ;} break; - case 1154: -#line 3488 "third_party/libpg_query/grammar/statements/select.y" + case 1155: +#line 3494 "third_party/libpg_query/grammar/statements/select.y" { (yyval.list) = list_make1(makeString("!~~")); ;} break; - case 1155: -#line 3490 "third_party/libpg_query/grammar/statements/select.y" + case 1156: +#line 3496 "third_party/libpg_query/grammar/statements/select.y" { (yyval.list) = list_make1(makeString("~~~")); ;} break; - case 1156: -#line 3492 "third_party/libpg_query/grammar/statements/select.y" + case 1157: +#line 3498 "third_party/libpg_query/grammar/statements/select.y" { (yyval.list) = list_make1(makeString("!~~~")); ;} break; - case 1157: -#line 3494 "third_party/libpg_query/grammar/statements/select.y" + case 1158: +#line 3500 "third_party/libpg_query/grammar/statements/select.y" { (yyval.list) = list_make1(makeString("~~*")); ;} break; - case 1158: -#line 3496 "third_party/libpg_query/grammar/statements/select.y" + case 1159: +#line 3502 "third_party/libpg_query/grammar/statements/select.y" { (yyval.list) = list_make1(makeString("!~~*")); ;} break; - case 1159: -#line 3510 "third_party/libpg_query/grammar/statements/select.y" + case 1160: +#line 3516 "third_party/libpg_query/grammar/statements/select.y" { (yyval.list) = list_make1(makeString((yyvsp[(1) - (1)].str))); ;} break; - case 1160: -#line 3512 "third_party/libpg_query/grammar/statements/select.y" + case 1161: +#line 3518 "third_party/libpg_query/grammar/statements/select.y" { (yyval.list) = lcons(makeString((yyvsp[(1) - (3)].str)), (yyvsp[(3) - (3)].list)); ;} break; - case 1161: -#line 3517 "third_party/libpg_query/grammar/statements/select.y" + case 1162: +#line 3523 "third_party/libpg_query/grammar/statements/select.y" { (yyval.list) = list_make1((yyvsp[(1) - (1)].node)); ;} break; - case 1162: -#line 3521 "third_party/libpg_query/grammar/statements/select.y" + case 1163: +#line 3527 "third_party/libpg_query/grammar/statements/select.y" { (yyval.list) = lappend((yyvsp[(1) - (3)].list), (yyvsp[(3) - (3)].node)); ;} break; - case 1163: -#line 3528 "third_party/libpg_query/grammar/statements/select.y" + case 1164: +#line 3534 "third_party/libpg_query/grammar/statements/select.y" { (yyval.list) = (yyvsp[(1) - (1)].list); ;} break; - case 1164: -#line 3533 "third_party/libpg_query/grammar/statements/select.y" + case 1165: +#line 3539 "third_party/libpg_query/grammar/statements/select.y" { (yyval.list) = (yyvsp[(1) - (2)].list); ;} break; - case 1165: -#line 3539 "third_party/libpg_query/grammar/statements/select.y" + case 1166: +#line 3545 "third_party/libpg_query/grammar/statements/select.y" { (yyval.list) = list_make1((yyvsp[(1) - (1)].node)); ;} break; - case 1166: -#line 3543 "third_party/libpg_query/grammar/statements/select.y" + case 1167: +#line 3549 "third_party/libpg_query/grammar/statements/select.y" { (yyval.list) = lappend((yyvsp[(1) - (3)].list), (yyvsp[(3) - (3)].node)); ;} break; - case 1167: -#line 3550 "third_party/libpg_query/grammar/statements/select.y" + case 1168: +#line 3556 "third_party/libpg_query/grammar/statements/select.y" { (yyval.list) = (yyvsp[(1) - (1)].list); ;} break; - case 1168: -#line 3555 "third_party/libpg_query/grammar/statements/select.y" + case 1169: +#line 3561 "third_party/libpg_query/grammar/statements/select.y" { (yyval.list) = (yyvsp[(1) - (2)].list); ;} break; - case 1169: -#line 3562 "third_party/libpg_query/grammar/statements/select.y" + case 1170: +#line 3568 "third_party/libpg_query/grammar/statements/select.y" { (yyval.list) = (yyvsp[(1) - (1)].list); ;} break; - case 1170: -#line 3566 "third_party/libpg_query/grammar/statements/select.y" + case 1171: +#line 3572 "third_party/libpg_query/grammar/statements/select.y" { (yyval.list) = NULL; ;} break; - case 1171: -#line 3575 "third_party/libpg_query/grammar/statements/select.y" + case 1172: +#line 3581 "third_party/libpg_query/grammar/statements/select.y" { (yyval.list) = list_make1((yyvsp[(1) - (1)].node)); ;} break; - case 1172: -#line 3579 "third_party/libpg_query/grammar/statements/select.y" + case 1173: +#line 3585 "third_party/libpg_query/grammar/statements/select.y" { (yyval.list) = lappend((yyvsp[(1) - (3)].list), (yyvsp[(3) - (3)].node)); ;} break; - case 1173: -#line 3585 "third_party/libpg_query/grammar/statements/select.y" + case 1174: +#line 3591 "third_party/libpg_query/grammar/statements/select.y" { (yyval.node) = (yyvsp[(1) - (1)].node); ;} break; - case 1174: -#line 3589 "third_party/libpg_query/grammar/statements/select.y" + case 1175: +#line 3595 "third_party/libpg_query/grammar/statements/select.y" { PGNamedArgExpr *na = makeNode(PGNamedArgExpr); na->name = (yyvsp[(1) - (3)].str); @@ -29023,8 +29034,8 @@ YYLTYPE yylloc; ;} break; - case 1175: -#line 3598 "third_party/libpg_query/grammar/statements/select.y" + case 1176: +#line 3604 "third_party/libpg_query/grammar/statements/select.y" { PGNamedArgExpr *na = makeNode(PGNamedArgExpr); na->name = (yyvsp[(1) - (3)].str); @@ -29035,156 +29046,156 @@ YYLTYPE yylloc; ;} break; - case 1176: -#line 3608 "third_party/libpg_query/grammar/statements/select.y" + case 1177: +#line 3614 "third_party/libpg_query/grammar/statements/select.y" { (yyval.list) = list_make1((yyvsp[(1) - (1)].typnam)); ;} break; - case 1177: -#line 3609 "third_party/libpg_query/grammar/statements/select.y" + case 1178: +#line 3615 "third_party/libpg_query/grammar/statements/select.y" { (yyval.list) = lappend((yyvsp[(1) - (3)].list), (yyvsp[(3) - (3)].typnam)); ;} break; - case 1178: -#line 3614 "third_party/libpg_query/grammar/statements/select.y" + case 1179: +#line 3620 "third_party/libpg_query/grammar/statements/select.y" { (yyval.list) = list_make2(makeStringConst((yyvsp[(1) - (3)].str), (yylsp[(1) - (3)])), (yyvsp[(3) - (3)].node)); ;} break; - case 1179: -#line 3617 "third_party/libpg_query/grammar/statements/select.y" + case 1180: +#line 3623 "third_party/libpg_query/grammar/statements/select.y" { (yyval.list) = NIL; ;} break; - case 1180: -#line 3624 "third_party/libpg_query/grammar/statements/select.y" + case 1181: +#line 3630 "third_party/libpg_query/grammar/statements/select.y" { (yyval.str) = (yyvsp[(1) - (1)].str); ;} break; - case 1181: -#line 3625 "third_party/libpg_query/grammar/statements/select.y" + case 1182: +#line 3631 "third_party/libpg_query/grammar/statements/select.y" { (yyval.str) = (char*) "year"; ;} break; - case 1182: -#line 3626 "third_party/libpg_query/grammar/statements/select.y" + case 1183: +#line 3632 "third_party/libpg_query/grammar/statements/select.y" { (yyval.str) = (char*) "month"; ;} break; - case 1183: -#line 3627 "third_party/libpg_query/grammar/statements/select.y" + case 1184: +#line 3633 "third_party/libpg_query/grammar/statements/select.y" { (yyval.str) = (char*) "day"; ;} break; - case 1184: -#line 3628 "third_party/libpg_query/grammar/statements/select.y" + case 1185: +#line 3634 "third_party/libpg_query/grammar/statements/select.y" { (yyval.str) = (char*) "hour"; ;} break; - case 1185: -#line 3629 "third_party/libpg_query/grammar/statements/select.y" + case 1186: +#line 3635 "third_party/libpg_query/grammar/statements/select.y" { (yyval.str) = (char*) "minute"; ;} break; - case 1186: -#line 3630 "third_party/libpg_query/grammar/statements/select.y" + case 1187: +#line 3636 "third_party/libpg_query/grammar/statements/select.y" { (yyval.str) = (char*) "second"; ;} break; - case 1187: -#line 3631 "third_party/libpg_query/grammar/statements/select.y" + case 1188: +#line 3637 "third_party/libpg_query/grammar/statements/select.y" { (yyval.str) = (char*) "millisecond"; ;} break; - case 1188: -#line 3632 "third_party/libpg_query/grammar/statements/select.y" + case 1189: +#line 3638 "third_party/libpg_query/grammar/statements/select.y" { (yyval.str) = (char*) "microsecond"; ;} break; - case 1189: -#line 3633 "third_party/libpg_query/grammar/statements/select.y" + case 1190: +#line 3639 "third_party/libpg_query/grammar/statements/select.y" { (yyval.str) = (char*) "week"; ;} break; - case 1190: -#line 3634 "third_party/libpg_query/grammar/statements/select.y" + case 1191: +#line 3640 "third_party/libpg_query/grammar/statements/select.y" { (yyval.str) = (char*) "quarter"; ;} break; - case 1191: -#line 3635 "third_party/libpg_query/grammar/statements/select.y" + case 1192: +#line 3641 "third_party/libpg_query/grammar/statements/select.y" { (yyval.str) = (char*) "decade"; ;} break; - case 1192: -#line 3636 "third_party/libpg_query/grammar/statements/select.y" + case 1193: +#line 3642 "third_party/libpg_query/grammar/statements/select.y" { (yyval.str) = (char*) "century"; ;} break; - case 1193: -#line 3637 "third_party/libpg_query/grammar/statements/select.y" + case 1194: +#line 3643 "third_party/libpg_query/grammar/statements/select.y" { (yyval.str) = (char*) "millennium"; ;} break; - case 1194: -#line 3638 "third_party/libpg_query/grammar/statements/select.y" + case 1195: +#line 3644 "third_party/libpg_query/grammar/statements/select.y" { (yyval.str) = (yyvsp[(1) - (1)].str); ;} break; - case 1195: -#line 3649 "third_party/libpg_query/grammar/statements/select.y" + case 1196: +#line 3655 "third_party/libpg_query/grammar/statements/select.y" { (yyval.list) = list_make4((yyvsp[(1) - (4)].node), (yyvsp[(2) - (4)].node), (yyvsp[(3) - (4)].node), (yyvsp[(4) - (4)].node)); ;} break; - case 1196: -#line 3653 "third_party/libpg_query/grammar/statements/select.y" + case 1197: +#line 3659 "third_party/libpg_query/grammar/statements/select.y" { (yyval.list) = list_make3((yyvsp[(1) - (3)].node), (yyvsp[(2) - (3)].node), (yyvsp[(3) - (3)].node)); ;} break; - case 1197: -#line 3660 "third_party/libpg_query/grammar/statements/select.y" + case 1198: +#line 3666 "third_party/libpg_query/grammar/statements/select.y" { (yyval.node) = (yyvsp[(2) - (2)].node); ;} break; - case 1198: -#line 3666 "third_party/libpg_query/grammar/statements/select.y" + case 1199: +#line 3672 "third_party/libpg_query/grammar/statements/select.y" { (yyval.list) = list_make2((yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node)); ;} break; - case 1199: -#line 3667 "third_party/libpg_query/grammar/statements/select.y" + case 1200: +#line 3673 "third_party/libpg_query/grammar/statements/select.y" { (yyval.list) = NIL; ;} break; - case 1200: -#line 3684 "third_party/libpg_query/grammar/statements/select.y" + case 1201: +#line 3690 "third_party/libpg_query/grammar/statements/select.y" { (yyval.list) = list_make3((yyvsp[(1) - (3)].node), (yyvsp[(2) - (3)].node), (yyvsp[(3) - (3)].node)); ;} break; - case 1201: -#line 3688 "third_party/libpg_query/grammar/statements/select.y" + case 1202: +#line 3694 "third_party/libpg_query/grammar/statements/select.y" { /* not legal per SQL99, but might as well allow it */ (yyval.list) = list_make3((yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node), (yyvsp[(2) - (3)].node)); ;} break; - case 1202: -#line 3693 "third_party/libpg_query/grammar/statements/select.y" + case 1203: +#line 3699 "third_party/libpg_query/grammar/statements/select.y" { (yyval.list) = list_make2((yyvsp[(1) - (2)].node), (yyvsp[(2) - (2)].node)); ;} break; - case 1203: -#line 3697 "third_party/libpg_query/grammar/statements/select.y" + case 1204: +#line 3703 "third_party/libpg_query/grammar/statements/select.y" { /* * Since there are no cases where this syntax allows @@ -29201,45 +29212,45 @@ YYLTYPE yylloc; ;} break; - case 1204: -#line 3712 "third_party/libpg_query/grammar/statements/select.y" + case 1205: +#line 3718 "third_party/libpg_query/grammar/statements/select.y" { (yyval.list) = (yyvsp[(1) - (1)].list); ;} break; - case 1205: -#line 3716 "third_party/libpg_query/grammar/statements/select.y" + case 1206: +#line 3722 "third_party/libpg_query/grammar/statements/select.y" { (yyval.list) = NIL; ;} break; - case 1206: -#line 3720 "third_party/libpg_query/grammar/statements/select.y" + case 1207: +#line 3726 "third_party/libpg_query/grammar/statements/select.y" { (yyval.node) = (yyvsp[(2) - (2)].node); ;} break; - case 1207: -#line 3723 "third_party/libpg_query/grammar/statements/select.y" + case 1208: +#line 3729 "third_party/libpg_query/grammar/statements/select.y" { (yyval.node) = (yyvsp[(2) - (2)].node); ;} break; - case 1208: -#line 3726 "third_party/libpg_query/grammar/statements/select.y" + case 1209: +#line 3732 "third_party/libpg_query/grammar/statements/select.y" { (yyval.list) = lappend((yyvsp[(3) - (3)].list), (yyvsp[(1) - (3)].node)); ;} break; - case 1209: -#line 3727 "third_party/libpg_query/grammar/statements/select.y" + case 1210: +#line 3733 "third_party/libpg_query/grammar/statements/select.y" { (yyval.list) = (yyvsp[(2) - (2)].list); ;} break; - case 1210: -#line 3728 "third_party/libpg_query/grammar/statements/select.y" + case 1211: +#line 3734 "third_party/libpg_query/grammar/statements/select.y" { (yyval.list) = (yyvsp[(1) - (1)].list); ;} break; - case 1211: -#line 3732 "third_party/libpg_query/grammar/statements/select.y" + case 1212: +#line 3738 "third_party/libpg_query/grammar/statements/select.y" { PGSubLink *n = makeNode(PGSubLink); n->subselect = (yyvsp[(1) - (1)].node); @@ -29248,18 +29259,18 @@ YYLTYPE yylloc; ;} break; - case 1212: -#line 3738 "third_party/libpg_query/grammar/statements/select.y" + case 1213: +#line 3744 "third_party/libpg_query/grammar/statements/select.y" { (yyval.node) = (PGNode *)(yyvsp[(2) - (3)].list); ;} break; - case 1214: -#line 3740 "third_party/libpg_query/grammar/statements/select.y" + case 1215: +#line 3746 "third_party/libpg_query/grammar/statements/select.y" { (yyval.node) = (PGNode *)(yyvsp[(1) - (1)].node); ;} break; - case 1215: -#line 3751 "third_party/libpg_query/grammar/statements/select.y" + case 1216: +#line 3757 "third_party/libpg_query/grammar/statements/select.y" { PGCaseExpr *c = makeNode(PGCaseExpr); c->casetype = InvalidOid; /* not analyzed yet */ @@ -29271,18 +29282,18 @@ YYLTYPE yylloc; ;} break; - case 1216: -#line 3764 "third_party/libpg_query/grammar/statements/select.y" + case 1217: +#line 3770 "third_party/libpg_query/grammar/statements/select.y" { (yyval.list) = list_make1((yyvsp[(1) - (1)].node)); ;} break; - case 1217: -#line 3765 "third_party/libpg_query/grammar/statements/select.y" + case 1218: +#line 3771 "third_party/libpg_query/grammar/statements/select.y" { (yyval.list) = lappend((yyvsp[(1) - (2)].list), (yyvsp[(2) - (2)].node)); ;} break; - case 1218: -#line 3770 "third_party/libpg_query/grammar/statements/select.y" + case 1219: +#line 3776 "third_party/libpg_query/grammar/statements/select.y" { PGCaseWhen *w = makeNode(PGCaseWhen); w->expr = (PGExpr *) (yyvsp[(2) - (4)].node); @@ -29292,59 +29303,59 @@ YYLTYPE yylloc; ;} break; - case 1219: -#line 3780 "third_party/libpg_query/grammar/statements/select.y" + case 1220: +#line 3786 "third_party/libpg_query/grammar/statements/select.y" { (yyval.node) = (yyvsp[(2) - (2)].node); ;} break; - case 1220: -#line 3781 "third_party/libpg_query/grammar/statements/select.y" + case 1221: +#line 3787 "third_party/libpg_query/grammar/statements/select.y" { (yyval.node) = NULL; ;} break; - case 1221: -#line 3784 "third_party/libpg_query/grammar/statements/select.y" + case 1222: +#line 3790 "third_party/libpg_query/grammar/statements/select.y" { (yyval.node) = (yyvsp[(1) - (1)].node); ;} break; - case 1222: -#line 3785 "third_party/libpg_query/grammar/statements/select.y" + case 1223: +#line 3791 "third_party/libpg_query/grammar/statements/select.y" { (yyval.node) = NULL; ;} break; - case 1223: -#line 3789 "third_party/libpg_query/grammar/statements/select.y" + case 1224: +#line 3795 "third_party/libpg_query/grammar/statements/select.y" { (yyval.list) = list_make1((yyvsp[(1) - (1)].node)); ;} break; - case 1224: -#line 3790 "third_party/libpg_query/grammar/statements/select.y" + case 1225: +#line 3796 "third_party/libpg_query/grammar/statements/select.y" { (yyval.list) = lappend((yyvsp[(1) - (3)].list), (yyvsp[(3) - (3)].node)); ;} break; - case 1225: -#line 3794 "third_party/libpg_query/grammar/statements/select.y" + case 1226: +#line 3800 "third_party/libpg_query/grammar/statements/select.y" { (yyval.node) = makeColumnRef((yyvsp[(1) - (1)].str), NIL, (yylsp[(1) - (1)]), yyscanner); ;} break; - case 1226: -#line 3800 "third_party/libpg_query/grammar/statements/select.y" + case 1227: +#line 3806 "third_party/libpg_query/grammar/statements/select.y" { (yyval.node) = makeColumnRef((yyvsp[(1) - (1)].str), NIL, (yylsp[(1) - (1)]), yyscanner); ;} break; - case 1227: -#line 3804 "third_party/libpg_query/grammar/statements/select.y" + case 1228: +#line 3810 "third_party/libpg_query/grammar/statements/select.y" { (yyval.node) = makeColumnRef((yyvsp[(1) - (2)].str), (yyvsp[(2) - (2)].list), (yylsp[(1) - (2)]), yyscanner); ;} break; - case 1228: -#line 3811 "third_party/libpg_query/grammar/statements/select.y" + case 1229: +#line 3817 "third_party/libpg_query/grammar/statements/select.y" { PGAIndices *ai = makeNode(PGAIndices); ai->is_slice = false; @@ -29354,8 +29365,8 @@ YYLTYPE yylloc; ;} break; - case 1229: -#line 3819 "third_party/libpg_query/grammar/statements/select.y" + case 1230: +#line 3825 "third_party/libpg_query/grammar/statements/select.y" { PGAIndices *ai = makeNode(PGAIndices); ai->is_slice = true; @@ -29365,8 +29376,8 @@ YYLTYPE yylloc; ;} break; - case 1230: -#line 3826 "third_party/libpg_query/grammar/statements/select.y" + case 1231: +#line 3832 "third_party/libpg_query/grammar/statements/select.y" { PGAIndices *ai = makeNode(PGAIndices); ai->is_slice = true; @@ -29377,8 +29388,8 @@ YYLTYPE yylloc; ;} break; - case 1231: -#line 3834 "third_party/libpg_query/grammar/statements/select.y" + case 1232: +#line 3840 "third_party/libpg_query/grammar/statements/select.y" { PGAIndices *ai = makeNode(PGAIndices); ai->is_slice = true; @@ -29388,43 +29399,43 @@ YYLTYPE yylloc; ;} break; - case 1232: -#line 3844 "third_party/libpg_query/grammar/statements/select.y" + case 1233: +#line 3850 "third_party/libpg_query/grammar/statements/select.y" { (yyval.node) = (yyvsp[(1) - (1)].node); ;} break; - case 1233: -#line 3845 "third_party/libpg_query/grammar/statements/select.y" + case 1234: +#line 3851 "third_party/libpg_query/grammar/statements/select.y" { (yyval.node) = NULL; ;} break; - case 1234: -#line 3850 "third_party/libpg_query/grammar/statements/select.y" + case 1235: +#line 3856 "third_party/libpg_query/grammar/statements/select.y" { (yyval.list) = NIL; ;} break; - case 1235: -#line 3851 "third_party/libpg_query/grammar/statements/select.y" + case 1236: +#line 3857 "third_party/libpg_query/grammar/statements/select.y" { (yyval.list) = lappend((yyvsp[(1) - (2)].list), (yyvsp[(2) - (2)].node)); ;} break; - case 1236: -#line 3855 "third_party/libpg_query/grammar/statements/select.y" + case 1237: +#line 3861 "third_party/libpg_query/grammar/statements/select.y" { (yyval.list) = NULL; ;} break; - case 1237: -#line 3856 "third_party/libpg_query/grammar/statements/select.y" + case 1238: +#line 3862 "third_party/libpg_query/grammar/statements/select.y" { (yyval.list) = list_make1(NULL); ;} break; - case 1238: -#line 3857 "third_party/libpg_query/grammar/statements/select.y" + case 1239: +#line 3863 "third_party/libpg_query/grammar/statements/select.y" { (yyval.list) = (yyvsp[(2) - (3)].list); ;} break; - case 1239: -#line 3862 "third_party/libpg_query/grammar/statements/select.y" + case 1240: +#line 3868 "third_party/libpg_query/grammar/statements/select.y" { if ((yyvsp[(3) - (3)].list)) { PGFuncCall *n = makeFuncCall(list_make1(makeString((yyvsp[(2) - (3)].str))), (yyvsp[(3) - (3)].list)->head->data.ptr_value ? (yyvsp[(3) - (3)].list) : NULL, (yylsp[(2) - (3)])); @@ -29435,8 +29446,8 @@ YYLTYPE yylloc; ;} break; - case 1240: -#line 3871 "third_party/libpg_query/grammar/statements/select.y" + case 1241: +#line 3877 "third_party/libpg_query/grammar/statements/select.y" { PGAIndices *ai = makeNode(PGAIndices); ai->is_slice = false; @@ -29446,8 +29457,8 @@ YYLTYPE yylloc; ;} break; - case 1241: -#line 3879 "third_party/libpg_query/grammar/statements/select.y" + case 1242: +#line 3885 "third_party/libpg_query/grammar/statements/select.y" { PGAIndices *ai = makeNode(PGAIndices); ai->is_slice = true; @@ -29457,8 +29468,8 @@ YYLTYPE yylloc; ;} break; - case 1242: -#line 3886 "third_party/libpg_query/grammar/statements/select.y" + case 1243: +#line 3892 "third_party/libpg_query/grammar/statements/select.y" { PGAIndices *ai = makeNode(PGAIndices); ai->is_slice = true; @@ -29469,8 +29480,8 @@ YYLTYPE yylloc; ;} break; - case 1243: -#line 3895 "third_party/libpg_query/grammar/statements/select.y" + case 1244: +#line 3901 "third_party/libpg_query/grammar/statements/select.y" { PGAIndices *ai = makeNode(PGAIndices); ai->is_slice = true; @@ -29480,48 +29491,48 @@ YYLTYPE yylloc; ;} break; - case 1244: -#line 3910 "third_party/libpg_query/grammar/statements/select.y" + case 1245: +#line 3916 "third_party/libpg_query/grammar/statements/select.y" { (yyval.list) = NIL; ;} break; - case 1245: -#line 3911 "third_party/libpg_query/grammar/statements/select.y" + case 1246: +#line 3917 "third_party/libpg_query/grammar/statements/select.y" { (yyval.list) = lappend((yyvsp[(1) - (2)].list), (yyvsp[(2) - (2)].node)); ;} break; - case 1248: -#line 3927 "third_party/libpg_query/grammar/statements/select.y" + case 1249: +#line 3933 "third_party/libpg_query/grammar/statements/select.y" { (yyval.list) = (yyvsp[(1) - (1)].list); ;} break; - case 1249: -#line 3928 "third_party/libpg_query/grammar/statements/select.y" + case 1250: +#line 3934 "third_party/libpg_query/grammar/statements/select.y" { (yyval.list) = NIL; ;} break; - case 1250: -#line 3932 "third_party/libpg_query/grammar/statements/select.y" + case 1251: +#line 3938 "third_party/libpg_query/grammar/statements/select.y" { (yyval.list) = list_make1((yyvsp[(1) - (1)].target)); ;} break; - case 1251: -#line 3933 "third_party/libpg_query/grammar/statements/select.y" + case 1252: +#line 3939 "third_party/libpg_query/grammar/statements/select.y" { (yyval.list) = lappend((yyvsp[(1) - (3)].list), (yyvsp[(3) - (3)].target)); ;} break; - case 1252: -#line 3937 "third_party/libpg_query/grammar/statements/select.y" + case 1253: +#line 3943 "third_party/libpg_query/grammar/statements/select.y" { (yyval.list) = (yyvsp[(1) - (1)].list); ;} break; - case 1253: -#line 3938 "third_party/libpg_query/grammar/statements/select.y" + case 1254: +#line 3944 "third_party/libpg_query/grammar/statements/select.y" { (yyval.list) = (yyvsp[(1) - (2)].list); ;} break; - case 1254: -#line 3942 "third_party/libpg_query/grammar/statements/select.y" + case 1255: +#line 3948 "third_party/libpg_query/grammar/statements/select.y" { (yyval.target) = makeNode(PGResTarget); (yyval.target)->name = (yyvsp[(3) - (3)].str); @@ -29531,8 +29542,8 @@ YYLTYPE yylloc; ;} break; - case 1255: -#line 3958 "third_party/libpg_query/grammar/statements/select.y" + case 1256: +#line 3964 "third_party/libpg_query/grammar/statements/select.y" { (yyval.target) = makeNode(PGResTarget); (yyval.target)->name = (yyvsp[(2) - (2)].str); @@ -29542,8 +29553,8 @@ YYLTYPE yylloc; ;} break; - case 1256: -#line 3966 "third_party/libpg_query/grammar/statements/select.y" + case 1257: +#line 3972 "third_party/libpg_query/grammar/statements/select.y" { (yyval.target) = makeNode(PGResTarget); (yyval.target)->name = NULL; @@ -29553,8 +29564,8 @@ YYLTYPE yylloc; ;} break; - case 1257: -#line 3974 "third_party/libpg_query/grammar/statements/select.y" + case 1258: +#line 3980 "third_party/libpg_query/grammar/statements/select.y" { (yyval.target) = makeNode(PGResTarget); (yyval.target)->name = (yyvsp[(1) - (3)].str); @@ -29564,214 +29575,214 @@ YYLTYPE yylloc; ;} break; - case 1258: -#line 3983 "third_party/libpg_query/grammar/statements/select.y" + case 1259: +#line 3989 "third_party/libpg_query/grammar/statements/select.y" { (yyval.list) = (yyvsp[(3) - (4)].list); ;} break; - case 1259: -#line 3984 "third_party/libpg_query/grammar/statements/select.y" + case 1260: +#line 3990 "third_party/libpg_query/grammar/statements/select.y" { (yyval.list) = list_make1((yyvsp[(2) - (2)].list)); ;} break; - case 1260: -#line 3989 "third_party/libpg_query/grammar/statements/select.y" + case 1261: +#line 3995 "third_party/libpg_query/grammar/statements/select.y" { (yyval.list) = list_make1((yyvsp[(1) - (1)].str)); ;} break; - case 1261: -#line 3993 "third_party/libpg_query/grammar/statements/select.y" + case 1262: +#line 3999 "third_party/libpg_query/grammar/statements/select.y" { (yyval.list) = lappend((yyvsp[(1) - (3)].list), (yyvsp[(3) - (3)].str)); ;} break; - case 1262: -#line 3999 "third_party/libpg_query/grammar/statements/select.y" + case 1263: +#line 4005 "third_party/libpg_query/grammar/statements/select.y" { (yyval.list) = list_make1((yyvsp[(1) - (1)].list)); ;} break; - case 1263: -#line 4001 "third_party/libpg_query/grammar/statements/select.y" + case 1264: +#line 4007 "third_party/libpg_query/grammar/statements/select.y" { (yyval.list) = lappend((yyvsp[(1) - (3)].list), (yyvsp[(3) - (3)].list)); ;} break; - case 1264: -#line 4005 "third_party/libpg_query/grammar/statements/select.y" + case 1265: +#line 4011 "third_party/libpg_query/grammar/statements/select.y" { (yyval.list) = (yyvsp[(1) - (1)].list); ;} break; - case 1265: -#line 4006 "third_party/libpg_query/grammar/statements/select.y" + case 1266: +#line 4012 "third_party/libpg_query/grammar/statements/select.y" { (yyval.list) = (yyvsp[(1) - (2)].list); ;} break; - case 1266: -#line 4010 "third_party/libpg_query/grammar/statements/select.y" + case 1267: +#line 4016 "third_party/libpg_query/grammar/statements/select.y" { (yyval.list) = (yyvsp[(1) - (1)].list); ;} break; - case 1267: -#line 4011 "third_party/libpg_query/grammar/statements/select.y" + case 1268: +#line 4017 "third_party/libpg_query/grammar/statements/select.y" { (yyval.list) = NULL; ;} break; - case 1268: -#line 4014 "third_party/libpg_query/grammar/statements/select.y" + case 1269: +#line 4020 "third_party/libpg_query/grammar/statements/select.y" { (yyval.list) = list_make2((yyvsp[(1) - (3)].node), makeString((yyvsp[(3) - (3)].str))); ;} break; - case 1269: -#line 4018 "third_party/libpg_query/grammar/statements/select.y" + case 1270: +#line 4024 "third_party/libpg_query/grammar/statements/select.y" { (yyval.list) = list_make1((yyvsp[(1) - (1)].list)); ;} break; - case 1270: -#line 4019 "third_party/libpg_query/grammar/statements/select.y" + case 1271: +#line 4025 "third_party/libpg_query/grammar/statements/select.y" { (yyval.list) = lappend((yyvsp[(1) - (3)].list), (yyvsp[(3) - (3)].list)); ;} break; - case 1271: -#line 4023 "third_party/libpg_query/grammar/statements/select.y" + case 1272: +#line 4029 "third_party/libpg_query/grammar/statements/select.y" { (yyval.list) = (yyvsp[(1) - (1)].list); ;} break; - case 1272: -#line 4024 "third_party/libpg_query/grammar/statements/select.y" + case 1273: +#line 4030 "third_party/libpg_query/grammar/statements/select.y" { (yyval.list) = (yyvsp[(1) - (2)].list); ;} break; - case 1273: -#line 4027 "third_party/libpg_query/grammar/statements/select.y" + case 1274: +#line 4033 "third_party/libpg_query/grammar/statements/select.y" { (yyval.list) = (yyvsp[(3) - (4)].list); ;} break; - case 1274: -#line 4028 "third_party/libpg_query/grammar/statements/select.y" + case 1275: +#line 4034 "third_party/libpg_query/grammar/statements/select.y" { (yyval.list) = list_make1((yyvsp[(2) - (2)].list)); ;} break; - case 1275: -#line 4029 "third_party/libpg_query/grammar/statements/select.y" + case 1276: +#line 4035 "third_party/libpg_query/grammar/statements/select.y" { (yyval.list) = NULL; ;} break; - case 1276: -#line 4032 "third_party/libpg_query/grammar/statements/select.y" + case 1277: +#line 4038 "third_party/libpg_query/grammar/statements/select.y" { (yyval.list) = list_make2((yyvsp[(1) - (3)].list), (yyvsp[(3) - (3)].str)); ;} break; - case 1277: -#line 4036 "third_party/libpg_query/grammar/statements/select.y" + case 1278: +#line 4042 "third_party/libpg_query/grammar/statements/select.y" { (yyval.list) = list_make1((yyvsp[(1) - (1)].list)); ;} break; - case 1278: -#line 4037 "third_party/libpg_query/grammar/statements/select.y" + case 1279: +#line 4043 "third_party/libpg_query/grammar/statements/select.y" { (yyval.list) = lappend((yyvsp[(1) - (3)].list), (yyvsp[(3) - (3)].list)); ;} break; - case 1279: -#line 4041 "third_party/libpg_query/grammar/statements/select.y" + case 1280: +#line 4047 "third_party/libpg_query/grammar/statements/select.y" { (yyval.list) = (yyvsp[(1) - (1)].list); ;} break; - case 1280: -#line 4042 "third_party/libpg_query/grammar/statements/select.y" + case 1281: +#line 4048 "third_party/libpg_query/grammar/statements/select.y" { (yyval.list) = (yyvsp[(1) - (2)].list); ;} break; - case 1281: -#line 4044 "third_party/libpg_query/grammar/statements/select.y" + case 1282: +#line 4050 "third_party/libpg_query/grammar/statements/select.y" { (yyval.list) = (yyvsp[(3) - (4)].list); ;} break; - case 1282: -#line 4045 "third_party/libpg_query/grammar/statements/select.y" + case 1283: +#line 4051 "third_party/libpg_query/grammar/statements/select.y" { (yyval.list) = list_make1((yyvsp[(2) - (2)].list)); ;} break; - case 1283: -#line 4046 "third_party/libpg_query/grammar/statements/select.y" + case 1284: +#line 4052 "third_party/libpg_query/grammar/statements/select.y" { (yyval.list) = NULL; ;} break; - case 1284: -#line 4056 "third_party/libpg_query/grammar/statements/select.y" + case 1285: +#line 4062 "third_party/libpg_query/grammar/statements/select.y" { (yyval.list) = list_make1((yyvsp[(1) - (1)].range)); ;} break; - case 1285: -#line 4057 "third_party/libpg_query/grammar/statements/select.y" + case 1286: +#line 4063 "third_party/libpg_query/grammar/statements/select.y" { (yyval.list) = lappend((yyvsp[(1) - (3)].list), (yyvsp[(3) - (3)].range)); ;} break; - case 1286: -#line 4062 "third_party/libpg_query/grammar/statements/select.y" + case 1287: +#line 4068 "third_party/libpg_query/grammar/statements/select.y" { (yyval.list) = list_make1(makeString((yyvsp[(1) - (1)].str))); ;} break; - case 1287: -#line 4064 "third_party/libpg_query/grammar/statements/select.y" + case 1288: +#line 4070 "third_party/libpg_query/grammar/statements/select.y" { (yyval.list) = lappend((yyvsp[(1) - (3)].list), makeString((yyvsp[(3) - (3)].str))); ;} break; - case 1288: -#line 4069 "third_party/libpg_query/grammar/statements/select.y" + case 1289: +#line 4075 "third_party/libpg_query/grammar/statements/select.y" { (yyval.list) = (yyvsp[(1) - (1)].list); ;} break; - case 1289: -#line 4070 "third_party/libpg_query/grammar/statements/select.y" + case 1290: +#line 4076 "third_party/libpg_query/grammar/statements/select.y" { (yyval.list) = (yyvsp[(1) - (2)].list); ;} break; - case 1290: -#line 4074 "third_party/libpg_query/grammar/statements/select.y" + case 1291: +#line 4080 "third_party/libpg_query/grammar/statements/select.y" { (yyval.list) = (yyvsp[(1) - (1)].list); ;} break; - case 1291: -#line 4075 "third_party/libpg_query/grammar/statements/select.y" + case 1292: +#line 4081 "third_party/libpg_query/grammar/statements/select.y" { (yyval.list) = (yyvsp[(2) - (3)].list); ;} break; - case 1292: -#line 4078 "third_party/libpg_query/grammar/statements/select.y" + case 1293: +#line 4084 "third_party/libpg_query/grammar/statements/select.y" { (yyval.str) = (yyvsp[(1) - (1)].str); ;} break; - case 1293: -#line 4090 "third_party/libpg_query/grammar/statements/select.y" + case 1294: +#line 4096 "third_party/libpg_query/grammar/statements/select.y" { (yyval.list) = list_make1(makeString((yyvsp[(1) - (1)].str))); ;} break; - case 1294: -#line 4093 "third_party/libpg_query/grammar/statements/select.y" + case 1295: +#line 4099 "third_party/libpg_query/grammar/statements/select.y" { (yyval.list) = check_func_name(lcons(makeString((yyvsp[(1) - (2)].str)), (yyvsp[(2) - (2)].list)), yyscanner); ;} break; - case 1295: -#line 4104 "third_party/libpg_query/grammar/statements/select.y" + case 1296: +#line 4110 "third_party/libpg_query/grammar/statements/select.y" { (yyval.node) = makeIntConst((yyvsp[(1) - (1)].ival), (yylsp[(1) - (1)])); ;} break; - case 1296: -#line 4108 "third_party/libpg_query/grammar/statements/select.y" + case 1297: +#line 4114 "third_party/libpg_query/grammar/statements/select.y" { (yyval.node) = makeFloatConst((yyvsp[(1) - (1)].str), (yylsp[(1) - (1)])); ;} break; - case 1297: -#line 4112 "third_party/libpg_query/grammar/statements/select.y" + case 1298: +#line 4118 "third_party/libpg_query/grammar/statements/select.y" { if ((yyvsp[(2) - (2)].list)) { @@ -29785,15 +29796,15 @@ YYLTYPE yylloc; ;} break; - case 1298: -#line 4124 "third_party/libpg_query/grammar/statements/select.y" + case 1299: +#line 4130 "third_party/libpg_query/grammar/statements/select.y" { (yyval.node) = makeBitStringConst((yyvsp[(1) - (1)].str), (yylsp[(1) - (1)])); ;} break; - case 1299: -#line 4128 "third_party/libpg_query/grammar/statements/select.y" + case 1300: +#line 4134 "third_party/libpg_query/grammar/statements/select.y" { /* This is a bit constant per SQL99: * Without Feature F511, "BIT data type", @@ -29804,8 +29815,8 @@ YYLTYPE yylloc; ;} break; - case 1300: -#line 4137 "third_party/libpg_query/grammar/statements/select.y" + case 1301: +#line 4143 "third_party/libpg_query/grammar/statements/select.y" { /* generic type 'literal' syntax */ PGTypeName *t = makeTypeNameFromNameList((yyvsp[(1) - (2)].list)); @@ -29814,8 +29825,8 @@ YYLTYPE yylloc; ;} break; - case 1301: -#line 4144 "third_party/libpg_query/grammar/statements/select.y" + case 1302: +#line 4150 "third_party/libpg_query/grammar/statements/select.y" { /* generic syntax with a type modifier */ PGTypeName *t = makeTypeNameFromNameList((yyvsp[(1) - (7)].list)); @@ -29855,146 +29866,146 @@ YYLTYPE yylloc; ;} break; - case 1302: -#line 4182 "third_party/libpg_query/grammar/statements/select.y" + case 1303: +#line 4188 "third_party/libpg_query/grammar/statements/select.y" { (yyval.node) = makeStringConstCast((yyvsp[(2) - (2)].str), (yylsp[(2) - (2)]), (yyvsp[(1) - (2)].typnam)); ;} break; - case 1303: -#line 4186 "third_party/libpg_query/grammar/statements/select.y" + case 1304: +#line 4192 "third_party/libpg_query/grammar/statements/select.y" { (yyval.node) = makeIntervalNode((yyvsp[(3) - (5)].node), (yylsp[(3) - (5)]), (yyvsp[(5) - (5)].list)); ;} break; - case 1304: -#line 4190 "third_party/libpg_query/grammar/statements/select.y" + case 1305: +#line 4196 "third_party/libpg_query/grammar/statements/select.y" { (yyval.node) = makeIntervalNode((yyvsp[(2) - (3)].ival), (yylsp[(2) - (3)]), (yyvsp[(3) - (3)].list)); ;} break; - case 1305: -#line 4194 "third_party/libpg_query/grammar/statements/select.y" + case 1306: +#line 4200 "third_party/libpg_query/grammar/statements/select.y" { (yyval.node) = makeIntervalNode((yyvsp[(2) - (3)].str), (yylsp[(2) - (3)]), (yyvsp[(3) - (3)].list)); ;} break; - case 1306: -#line 4198 "third_party/libpg_query/grammar/statements/select.y" + case 1307: +#line 4204 "third_party/libpg_query/grammar/statements/select.y" { (yyval.node) = makeBoolAConst(true, (yylsp[(1) - (1)])); ;} break; - case 1307: -#line 4202 "third_party/libpg_query/grammar/statements/select.y" + case 1308: +#line 4208 "third_party/libpg_query/grammar/statements/select.y" { (yyval.node) = makeBoolAConst(false, (yylsp[(1) - (1)])); ;} break; - case 1308: -#line 4206 "third_party/libpg_query/grammar/statements/select.y" + case 1309: +#line 4212 "third_party/libpg_query/grammar/statements/select.y" { (yyval.node) = makeNullAConst((yylsp[(1) - (1)])); ;} break; - case 1309: -#line 4211 "third_party/libpg_query/grammar/statements/select.y" - { (yyval.ival) = (yyvsp[(1) - (1)].ival); ;} - break; - case 1310: -#line 4228 "third_party/libpg_query/grammar/statements/select.y" - { (yyval.str) = (yyvsp[(1) - (1)].str); ;} +#line 4217 "third_party/libpg_query/grammar/statements/select.y" + { (yyval.ival) = (yyvsp[(1) - (1)].ival); ;} break; case 1311: -#line 4229 "third_party/libpg_query/grammar/statements/select.y" - { (yyval.str) = pstrdup((yyvsp[(1) - (1)].keyword)); ;} +#line 4234 "third_party/libpg_query/grammar/statements/select.y" + { (yyval.str) = (yyvsp[(1) - (1)].str); ;} break; case 1312: -#line 4230 "third_party/libpg_query/grammar/statements/select.y" +#line 4235 "third_party/libpg_query/grammar/statements/select.y" { (yyval.str) = pstrdup((yyvsp[(1) - (1)].keyword)); ;} break; case 1313: -#line 4233 "third_party/libpg_query/grammar/statements/select.y" - { (yyval.str) = (yyvsp[(1) - (1)].str); ;} +#line 4236 "third_party/libpg_query/grammar/statements/select.y" + { (yyval.str) = pstrdup((yyvsp[(1) - (1)].keyword)); ;} break; case 1314: -#line 4234 "third_party/libpg_query/grammar/statements/select.y" - { (yyval.str) = pstrdup((yyvsp[(1) - (1)].keyword)); ;} +#line 4239 "third_party/libpg_query/grammar/statements/select.y" + { (yyval.str) = (yyvsp[(1) - (1)].str); ;} break; case 1315: -#line 4235 "third_party/libpg_query/grammar/statements/select.y" +#line 4240 "third_party/libpg_query/grammar/statements/select.y" { (yyval.str) = pstrdup((yyvsp[(1) - (1)].keyword)); ;} break; case 1316: -#line 4238 "third_party/libpg_query/grammar/statements/select.y" - { (yyval.str) = (yyvsp[(1) - (1)].str); ;} +#line 4241 "third_party/libpg_query/grammar/statements/select.y" + { (yyval.str) = pstrdup((yyvsp[(1) - (1)].keyword)); ;} break; case 1317: -#line 4239 "third_party/libpg_query/grammar/statements/select.y" - { (yyval.str) = pstrdup((yyvsp[(1) - (1)].keyword)); ;} +#line 4244 "third_party/libpg_query/grammar/statements/select.y" + { (yyval.str) = (yyvsp[(1) - (1)].str); ;} break; case 1318: -#line 4240 "third_party/libpg_query/grammar/statements/select.y" +#line 4245 "third_party/libpg_query/grammar/statements/select.y" { (yyval.str) = pstrdup((yyvsp[(1) - (1)].keyword)); ;} break; case 1319: -#line 4243 "third_party/libpg_query/grammar/statements/select.y" - { (yyval.list) = list_make1(makeString((yyvsp[(1) - (1)].str))); ;} +#line 4246 "third_party/libpg_query/grammar/statements/select.y" + { (yyval.str) = pstrdup((yyvsp[(1) - (1)].keyword)); ;} break; case 1320: -#line 4244 "third_party/libpg_query/grammar/statements/select.y" - { (yyval.list) = lcons(makeString((yyvsp[(1) - (2)].str)), (yyvsp[(2) - (2)].list)); ;} +#line 4249 "third_party/libpg_query/grammar/statements/select.y" + { (yyval.list) = list_make1(makeString((yyvsp[(1) - (1)].str))); ;} break; case 1321: -#line 4248 "third_party/libpg_query/grammar/statements/select.y" - { (yyval.list) = list_make1(makeString((yyvsp[(2) - (2)].str))); ;} +#line 4250 "third_party/libpg_query/grammar/statements/select.y" + { (yyval.list) = lcons(makeString((yyvsp[(1) - (2)].str)), (yyvsp[(2) - (2)].list)); ;} break; case 1322: -#line 4250 "third_party/libpg_query/grammar/statements/select.y" - { (yyval.list) = lappend((yyvsp[(1) - (3)].list), makeString((yyvsp[(3) - (3)].str))); ;} +#line 4254 "third_party/libpg_query/grammar/statements/select.y" + { (yyval.list) = list_make1(makeString((yyvsp[(2) - (2)].str))); ;} break; case 1323: -#line 4254 "third_party/libpg_query/grammar/statements/select.y" - { (yyval.list) = (yyvsp[(2) - (3)].list); ;} +#line 4256 "third_party/libpg_query/grammar/statements/select.y" + { (yyval.list) = lappend((yyvsp[(1) - (3)].list), makeString((yyvsp[(3) - (3)].str))); ;} break; case 1324: -#line 4255 "third_party/libpg_query/grammar/statements/select.y" - { (yyval.list) = NIL; ;} +#line 4260 "third_party/libpg_query/grammar/statements/select.y" + { (yyval.list) = (yyvsp[(2) - (3)].list); ;} break; - case 1326: -#line 4262 "third_party/libpg_query/grammar/statements/select.y" - { (yyval.str) = (yyvsp[(1) - (1)].str); ;} + case 1325: +#line 4261 "third_party/libpg_query/grammar/statements/select.y" + { (yyval.list) = NIL; ;} break; case 1327: -#line 4263 "third_party/libpg_query/grammar/statements/select.y" +#line 4268 "third_party/libpg_query/grammar/statements/select.y" { (yyval.str) = (yyvsp[(1) - (1)].str); ;} break; case 1328: +#line 4269 "third_party/libpg_query/grammar/statements/select.y" + { (yyval.str) = (yyvsp[(1) - (1)].str); ;} + break; + + case 1329: #line 8 "third_party/libpg_query/grammar/statements/prepare.y" { PGPrepareStmt *n = makeNode(PGPrepareStmt); @@ -30005,17 +30016,17 @@ YYLTYPE yylloc; ;} break; - case 1329: + case 1330: #line 18 "third_party/libpg_query/grammar/statements/prepare.y" { (yyval.list) = (yyvsp[(2) - (3)].list); ;} break; - case 1330: + case 1331: #line 19 "third_party/libpg_query/grammar/statements/prepare.y" { (yyval.list) = NIL; ;} break; - case 1337: + case 1338: #line 8 "third_party/libpg_query/grammar/statements/create_schema.y" { PGCreateSchemaStmt *n = makeNode(PGCreateSchemaStmt); @@ -30037,7 +30048,7 @@ YYLTYPE yylloc; ;} break; - case 1338: + case 1339: #line 27 "third_party/libpg_query/grammar/statements/create_schema.y" { PGCreateSchemaStmt *n = makeNode(PGCreateSchemaStmt); @@ -30064,7 +30075,7 @@ YYLTYPE yylloc; ;} break; - case 1339: + case 1340: #line 51 "third_party/libpg_query/grammar/statements/create_schema.y" { PGCreateSchemaStmt *n = makeNode(PGCreateSchemaStmt); @@ -30086,7 +30097,7 @@ YYLTYPE yylloc; ;} break; - case 1340: + case 1341: #line 74 "third_party/libpg_query/grammar/statements/create_schema.y" { if ((yyloc) < 0) /* see comments for YYLLOC_DEFAULT */ @@ -30095,12 +30106,12 @@ YYLTYPE yylloc; ;} break; - case 1341: + case 1342: #line 80 "third_party/libpg_query/grammar/statements/create_schema.y" { (yyval.list) = NIL; ;} break; - case 1346: + case 1347: #line 11 "third_party/libpg_query/grammar/statements/index.y" { PGIndexStmt *n = makeNode(PGIndexStmt); @@ -30126,7 +30137,7 @@ YYLTYPE yylloc; ;} break; - case 1347: + case 1348: #line 36 "third_party/libpg_query/grammar/statements/index.y" { PGIndexStmt *n = makeNode(PGIndexStmt); @@ -30152,62 +30163,62 @@ YYLTYPE yylloc; ;} break; - case 1348: + case 1349: #line 62 "third_party/libpg_query/grammar/statements/index.y" { (yyval.str) = (yyvsp[(1) - (1)].str); ;} break; - case 1349: + case 1350: #line 66 "third_party/libpg_query/grammar/statements/index.y" { (yyval.str) = (yyvsp[(2) - (2)].str); ;} break; - case 1350: + case 1351: #line 67 "third_party/libpg_query/grammar/statements/index.y" { (yyval.str) = (char*) DEFAULT_INDEX_TYPE; ;} break; - case 1351: + case 1352: #line 72 "third_party/libpg_query/grammar/statements/index.y" { (yyval.boolean) = true; ;} break; - case 1352: + case 1353: #line 73 "third_party/libpg_query/grammar/statements/index.y" { (yyval.boolean) = false; ;} break; - case 1353: + case 1354: #line 78 "third_party/libpg_query/grammar/statements/index.y" { (yyval.str) = (yyvsp[(1) - (1)].str); ;} break; - case 1354: + case 1355: #line 79 "third_party/libpg_query/grammar/statements/index.y" { (yyval.str) = NULL; ;} break; - case 1355: + case 1356: #line 83 "third_party/libpg_query/grammar/statements/index.y" { (yyval.list) = (yyvsp[(2) - (2)].list); ;} break; - case 1356: + case 1357: #line 84 "third_party/libpg_query/grammar/statements/index.y" { (yyval.list) = NIL; ;} break; - case 1357: + case 1358: #line 89 "third_party/libpg_query/grammar/statements/index.y" { (yyval.boolean) = true; ;} break; - case 1358: + case 1359: #line 90 "third_party/libpg_query/grammar/statements/index.y" { (yyval.boolean) = false; ;} break; - case 1359: + case 1360: #line 8 "third_party/libpg_query/grammar/statements/alter_schema.y" { PGAlterObjectSchemaStmt *n = makeNode(PGAlterObjectSchemaStmt); @@ -30219,7 +30230,7 @@ YYLTYPE yylloc; ;} break; - case 1360: + case 1361: #line 17 "third_party/libpg_query/grammar/statements/alter_schema.y" { PGAlterObjectSchemaStmt *n = makeNode(PGAlterObjectSchemaStmt); @@ -30231,7 +30242,7 @@ YYLTYPE yylloc; ;} break; - case 1361: + case 1362: #line 26 "third_party/libpg_query/grammar/statements/alter_schema.y" { PGAlterObjectSchemaStmt *n = makeNode(PGAlterObjectSchemaStmt); @@ -30243,7 +30254,7 @@ YYLTYPE yylloc; ;} break; - case 1362: + case 1363: #line 35 "third_party/libpg_query/grammar/statements/alter_schema.y" { PGAlterObjectSchemaStmt *n = makeNode(PGAlterObjectSchemaStmt); @@ -30255,7 +30266,7 @@ YYLTYPE yylloc; ;} break; - case 1363: + case 1364: #line 44 "third_party/libpg_query/grammar/statements/alter_schema.y" { PGAlterObjectSchemaStmt *n = makeNode(PGAlterObjectSchemaStmt); @@ -30267,7 +30278,7 @@ YYLTYPE yylloc; ;} break; - case 1364: + case 1365: #line 53 "third_party/libpg_query/grammar/statements/alter_schema.y" { PGAlterObjectSchemaStmt *n = makeNode(PGAlterObjectSchemaStmt); @@ -30279,7 +30290,7 @@ YYLTYPE yylloc; ;} break; - case 1365: + case 1366: #line 6 "third_party/libpg_query/grammar/statements/checkpoint.y" { PGCheckPointStmt *n = makeNode(PGCheckPointStmt); @@ -30289,7 +30300,7 @@ YYLTYPE yylloc; ;} break; - case 1366: + case 1367: #line 13 "third_party/libpg_query/grammar/statements/checkpoint.y" { PGCheckPointStmt *n = makeNode(PGCheckPointStmt); @@ -30299,17 +30310,17 @@ YYLTYPE yylloc; ;} break; - case 1367: + case 1368: #line 22 "third_party/libpg_query/grammar/statements/checkpoint.y" { (yyval.str) = (yyvsp[(1) - (1)].str); ;} break; - case 1368: + case 1369: #line 23 "third_party/libpg_query/grammar/statements/checkpoint.y" { (yyval.str) = NULL; ;} break; - case 1369: + case 1370: #line 8 "third_party/libpg_query/grammar/statements/comment_on.y" { PGCommentOnStmt *n = makeNode(PGCommentOnStmt); @@ -30320,7 +30331,7 @@ YYLTYPE yylloc; ;} break; - case 1370: + case 1371: #line 16 "third_party/libpg_query/grammar/statements/comment_on.y" { PGCommentOnStmt *n = makeNode(PGCommentOnStmt); @@ -30331,67 +30342,67 @@ YYLTYPE yylloc; ;} break; - case 1371: + case 1372: #line 26 "third_party/libpg_query/grammar/statements/comment_on.y" { (yyval.node) = makeStringConst((yyvsp[(1) - (1)].str), (yylsp[(1) - (1)])); ;} break; - case 1372: + case 1373: #line 27 "third_party/libpg_query/grammar/statements/comment_on.y" { (yyval.node) = makeNullAConst((yylsp[(1) - (1)])); ;} break; - case 1373: + case 1374: #line 30 "third_party/libpg_query/grammar/statements/comment_on.y" { (yyval.objtype) = PG_OBJECT_TABLE; ;} break; - case 1374: + case 1375: #line 31 "third_party/libpg_query/grammar/statements/comment_on.y" { (yyval.objtype) = PG_OBJECT_SEQUENCE; ;} break; - case 1375: + case 1376: #line 32 "third_party/libpg_query/grammar/statements/comment_on.y" { (yyval.objtype) = PG_OBJECT_FUNCTION; ;} break; - case 1376: + case 1377: #line 33 "third_party/libpg_query/grammar/statements/comment_on.y" { (yyval.objtype) = PG_OBJECT_FUNCTION; ;} break; - case 1377: + case 1378: #line 34 "third_party/libpg_query/grammar/statements/comment_on.y" { (yyval.objtype) = PG_OBJECT_TABLE_MACRO; ;} break; - case 1378: + case 1379: #line 35 "third_party/libpg_query/grammar/statements/comment_on.y" { (yyval.objtype) = PG_OBJECT_VIEW; ;} break; - case 1379: + case 1380: #line 36 "third_party/libpg_query/grammar/statements/comment_on.y" { (yyval.objtype) = PG_OBJECT_DATABASE; ;} break; - case 1380: + case 1381: #line 37 "third_party/libpg_query/grammar/statements/comment_on.y" { (yyval.objtype) = PG_OBJECT_INDEX; ;} break; - case 1381: + case 1382: #line 38 "third_party/libpg_query/grammar/statements/comment_on.y" { (yyval.objtype) = PG_OBJECT_SCHEMA; ;} break; - case 1382: + case 1383: #line 39 "third_party/libpg_query/grammar/statements/comment_on.y" { (yyval.objtype) = PG_OBJECT_TYPE; ;} break; - case 1383: + case 1384: #line 8 "third_party/libpg_query/grammar/statements/export.y" { PGExportStmt *n = makeNode(PGExportStmt); @@ -30405,7 +30416,7 @@ YYLTYPE yylloc; ;} break; - case 1384: + case 1385: #line 20 "third_party/libpg_query/grammar/statements/export.y" { PGExportStmt *n = makeNode(PGExportStmt); @@ -30419,7 +30430,7 @@ YYLTYPE yylloc; ;} break; - case 1385: + case 1386: #line 34 "third_party/libpg_query/grammar/statements/export.y" { PGImportStmt *n = makeNode(PGImportStmt); @@ -30428,7 +30439,7 @@ YYLTYPE yylloc; ;} break; - case 1386: + case 1387: #line 10 "third_party/libpg_query/grammar/statements/explain.y" { PGExplainStmt *n = makeNode(PGExplainStmt); @@ -30438,7 +30449,7 @@ YYLTYPE yylloc; ;} break; - case 1387: + case 1388: #line 17 "third_party/libpg_query/grammar/statements/explain.y" { PGExplainStmt *n = makeNode(PGExplainStmt); @@ -30451,7 +30462,7 @@ YYLTYPE yylloc; ;} break; - case 1388: + case 1389: #line 27 "third_party/libpg_query/grammar/statements/explain.y" { PGExplainStmt *n = makeNode(PGExplainStmt); @@ -30461,7 +30472,7 @@ YYLTYPE yylloc; ;} break; - case 1389: + case 1390: #line 34 "third_party/libpg_query/grammar/statements/explain.y" { PGExplainStmt *n = makeNode(PGExplainStmt); @@ -30471,118 +30482,118 @@ YYLTYPE yylloc; ;} break; - case 1390: + case 1391: #line 44 "third_party/libpg_query/grammar/statements/explain.y" { (yyval.boolean) = true; ;} break; - case 1391: + case 1392: #line 45 "third_party/libpg_query/grammar/statements/explain.y" { (yyval.boolean) = false; ;} break; - case 1392: + case 1393: #line 50 "third_party/libpg_query/grammar/statements/explain.y" { (yyval.node) = (PGNode *) makeString((yyvsp[(1) - (1)].str)); ;} break; - case 1393: + case 1394: #line 51 "third_party/libpg_query/grammar/statements/explain.y" { (yyval.node) = (PGNode *) (yyvsp[(1) - (1)].value); ;} break; - case 1394: + case 1395: #line 52 "third_party/libpg_query/grammar/statements/explain.y" { (yyval.node) = NULL; ;} break; - case 1426: + case 1427: #line 91 "third_party/libpg_query/grammar/statements/explain.y" { (yyval.str) = (yyvsp[(1) - (1)].str); ;} break; - case 1427: + case 1428: #line 92 "third_party/libpg_query/grammar/statements/explain.y" { (yyval.str) = pstrdup((yyvsp[(1) - (1)].keyword)); ;} break; - case 1428: + case 1429: #line 93 "third_party/libpg_query/grammar/statements/explain.y" { (yyval.str) = pstrdup((yyvsp[(1) - (1)].keyword)); ;} break; - case 1429: + case 1430: #line 98 "third_party/libpg_query/grammar/statements/explain.y" { (yyval.str) = (yyvsp[(1) - (1)].str); ;} break; - case 1430: + case 1431: #line 99 "third_party/libpg_query/grammar/statements/explain.y" { (yyval.str) = (yyvsp[(1) - (1)].str); ;} break; - case 1431: + case 1432: #line 105 "third_party/libpg_query/grammar/statements/explain.y" { (yyval.list) = list_make1((yyvsp[(1) - (1)].defelt)); ;} break; - case 1432: + case 1433: #line 109 "third_party/libpg_query/grammar/statements/explain.y" { (yyval.list) = lappend((yyvsp[(1) - (3)].list), (yyvsp[(3) - (3)].defelt)); ;} break; - case 1433: + case 1434: #line 116 "third_party/libpg_query/grammar/statements/explain.y" {;} break; - case 1434: + case 1435: #line 117 "third_party/libpg_query/grammar/statements/explain.y" {;} break; - case 1435: + case 1436: #line 122 "third_party/libpg_query/grammar/statements/explain.y" { (yyval.str) = (char*) "true"; ;} break; - case 1436: + case 1437: #line 123 "third_party/libpg_query/grammar/statements/explain.y" { (yyval.str) = (char*) "false"; ;} break; - case 1437: + case 1438: #line 124 "third_party/libpg_query/grammar/statements/explain.y" { (yyval.str) = (char*) "on"; ;} break; - case 1438: + case 1439: #line 130 "third_party/libpg_query/grammar/statements/explain.y" { (yyval.str) = (yyvsp[(1) - (1)].str); ;} break; - case 1439: + case 1440: #line 136 "third_party/libpg_query/grammar/statements/explain.y" { (yyval.defelt) = makeDefElem((yyvsp[(1) - (2)].str), (yyvsp[(2) - (2)].node), (yylsp[(1) - (2)])); ;} break; - case 1440: + case 1441: #line 143 "third_party/libpg_query/grammar/statements/explain.y" { (yyval.str) = (yyvsp[(1) - (1)].str); ;} break; - case 1441: + case 1442: #line 144 "third_party/libpg_query/grammar/statements/explain.y" { (yyval.str) = (char*) "analyze"; ;} break; - case 1442: + case 1443: #line 11 "third_party/libpg_query/grammar/statements/variable_set.y" { PGVariableSetStmt *n = (yyvsp[(2) - (2)].vsetstmt); @@ -30591,7 +30602,7 @@ YYLTYPE yylloc; ;} break; - case 1443: + case 1444: #line 17 "third_party/libpg_query/grammar/statements/variable_set.y" { PGVariableSetStmt *n = (yyvsp[(3) - (3)].vsetstmt); @@ -30600,7 +30611,7 @@ YYLTYPE yylloc; ;} break; - case 1444: + case 1445: #line 23 "third_party/libpg_query/grammar/statements/variable_set.y" { PGVariableSetStmt *n = (yyvsp[(3) - (3)].vsetstmt); @@ -30609,7 +30620,7 @@ YYLTYPE yylloc; ;} break; - case 1445: + case 1446: #line 29 "third_party/libpg_query/grammar/statements/variable_set.y" { PGVariableSetStmt *n = (yyvsp[(3) - (3)].vsetstmt); @@ -30618,7 +30629,7 @@ YYLTYPE yylloc; ;} break; - case 1446: + case 1447: #line 35 "third_party/libpg_query/grammar/statements/variable_set.y" { PGVariableSetStmt *n = (yyvsp[(3) - (3)].vsetstmt); @@ -30627,12 +30638,12 @@ YYLTYPE yylloc; ;} break; - case 1447: + case 1448: #line 44 "third_party/libpg_query/grammar/statements/variable_set.y" {(yyval.vsetstmt) = (yyvsp[(1) - (1)].vsetstmt);;} break; - case 1448: + case 1449: #line 46 "third_party/libpg_query/grammar/statements/variable_set.y" { PGVariableSetStmt *n = makeNode(PGVariableSetStmt); @@ -30642,7 +30653,7 @@ YYLTYPE yylloc; ;} break; - case 1449: + case 1450: #line 54 "third_party/libpg_query/grammar/statements/variable_set.y" { PGVariableSetStmt *n = makeNode(PGVariableSetStmt); @@ -30656,7 +30667,7 @@ YYLTYPE yylloc; ;} break; - case 1450: + case 1451: #line 65 "third_party/libpg_query/grammar/statements/variable_set.y" { PGVariableSetStmt *n = makeNode(PGVariableSetStmt); @@ -30667,7 +30678,7 @@ YYLTYPE yylloc; ;} break; - case 1451: + case 1452: #line 77 "third_party/libpg_query/grammar/statements/variable_set.y" { PGVariableSetStmt *n = makeNode(PGVariableSetStmt); @@ -30678,7 +30689,7 @@ YYLTYPE yylloc; ;} break; - case 1452: + case 1453: #line 85 "third_party/libpg_query/grammar/statements/variable_set.y" { PGVariableSetStmt *n = makeNode(PGVariableSetStmt); @@ -30689,26 +30700,26 @@ YYLTYPE yylloc; ;} break; - case 1453: + case 1454: #line 96 "third_party/libpg_query/grammar/statements/variable_set.y" { (yyval.node) = (yyvsp[(1) - (1)].node); ;} break; - case 1454: + case 1455: #line 102 "third_party/libpg_query/grammar/statements/variable_set.y" { (yyval.node) = makeStringConst((yyvsp[(1) - (1)].str), (yylsp[(1) - (1)])); ;} break; - case 1455: + case 1456: #line 106 "third_party/libpg_query/grammar/statements/variable_set.y" { (yyval.node) = makeStringConst((yyvsp[(1) - (1)].str), (yylsp[(1) - (1)])); ;} break; - case 1456: + case 1457: #line 110 "third_party/libpg_query/grammar/statements/variable_set.y" { PGTypeName *t = (yyvsp[(1) - (3)].typnam); @@ -30726,7 +30737,7 @@ YYLTYPE yylloc; ;} break; - case 1457: + case 1458: #line 125 "third_party/libpg_query/grammar/statements/variable_set.y" { PGTypeName *t = (yyvsp[(1) - (5)].typnam); @@ -30736,32 +30747,32 @@ YYLTYPE yylloc; ;} break; - case 1458: + case 1459: #line 131 "third_party/libpg_query/grammar/statements/variable_set.y" { (yyval.node) = makeAConst((yyvsp[(1) - (1)].value), (yylsp[(1) - (1)])); ;} break; - case 1459: + case 1460: #line 132 "third_party/libpg_query/grammar/statements/variable_set.y" { (yyval.node) = NULL; ;} break; - case 1460: + case 1461: #line 133 "third_party/libpg_query/grammar/statements/variable_set.y" { (yyval.node) = NULL; ;} break; - case 1461: + case 1462: #line 137 "third_party/libpg_query/grammar/statements/variable_set.y" { (yyval.list) = list_make1((yyvsp[(1) - (1)].node)); ;} break; - case 1462: + case 1463: #line 138 "third_party/libpg_query/grammar/statements/variable_set.y" { (yyval.list) = lappend((yyvsp[(1) - (3)].list), (yyvsp[(3) - (3)].node)); ;} break; - case 1463: + case 1464: #line 8 "third_party/libpg_query/grammar/statements/load.y" { PGLoadStmt *n = makeNode(PGLoadStmt); @@ -30774,7 +30785,7 @@ YYLTYPE yylloc; ;} break; - case 1464: + case 1465: #line 17 "third_party/libpg_query/grammar/statements/load.y" { PGLoadStmt *n = makeNode(PGLoadStmt); @@ -30787,7 +30798,7 @@ YYLTYPE yylloc; ;} break; - case 1465: + case 1466: #line 26 "third_party/libpg_query/grammar/statements/load.y" { PGLoadStmt *n = makeNode(PGLoadStmt); @@ -30800,7 +30811,7 @@ YYLTYPE yylloc; ;} break; - case 1466: + case 1467: #line 35 "third_party/libpg_query/grammar/statements/load.y" { PGLoadStmt *n = makeNode(PGLoadStmt); @@ -30813,42 +30824,42 @@ YYLTYPE yylloc; ;} break; - case 1467: + case 1468: #line 46 "third_party/libpg_query/grammar/statements/load.y" { (yyval.loadinstalltype) = PG_LOAD_TYPE_INSTALL; ;} break; - case 1468: + case 1469: #line 47 "third_party/libpg_query/grammar/statements/load.y" { (yyval.loadinstalltype) = PG_LOAD_TYPE_FORCE_INSTALL; ;} break; - case 1469: + case 1470: #line 49 "third_party/libpg_query/grammar/statements/load.y" { (yyval.str) = (yyvsp[(1) - (1)].str); ;} break; - case 1470: + case 1471: #line 50 "third_party/libpg_query/grammar/statements/load.y" { (yyval.str) = (yyvsp[(1) - (1)].str); ;} break; - case 1471: + case 1472: #line 53 "third_party/libpg_query/grammar/statements/load.y" { (yyval.str) = NULL; ;} break; - case 1472: + case 1473: #line 54 "third_party/libpg_query/grammar/statements/load.y" { (yyval.str) = (yyvsp[(2) - (2)].str); ;} break; - case 1473: + case 1474: #line 55 "third_party/libpg_query/grammar/statements/load.y" { (yyval.str) = (yyvsp[(2) - (2)].str); ;} break; - case 1474: + case 1475: #line 9 "third_party/libpg_query/grammar/statements/vacuum.y" { PGVacuumStmt *n = makeNode(PGVacuumStmt); @@ -30865,7 +30876,7 @@ YYLTYPE yylloc; ;} break; - case 1475: + case 1476: #line 23 "third_party/libpg_query/grammar/statements/vacuum.y" { PGVacuumStmt *n = makeNode(PGVacuumStmt); @@ -30882,7 +30893,7 @@ YYLTYPE yylloc; ;} break; - case 1476: + case 1477: #line 37 "third_party/libpg_query/grammar/statements/vacuum.y" { PGVacuumStmt *n = (PGVacuumStmt *) (yyvsp[(5) - (5)].node); @@ -30897,7 +30908,7 @@ YYLTYPE yylloc; ;} break; - case 1477: + case 1478: #line 49 "third_party/libpg_query/grammar/statements/vacuum.y" { PGVacuumStmt *n = makeNode(PGVacuumStmt); @@ -30908,7 +30919,7 @@ YYLTYPE yylloc; ;} break; - case 1478: + case 1479: #line 57 "third_party/libpg_query/grammar/statements/vacuum.y" { PGVacuumStmt *n = makeNode(PGVacuumStmt); @@ -30921,27 +30932,27 @@ YYLTYPE yylloc; ;} break; - case 1479: + case 1480: #line 70 "third_party/libpg_query/grammar/statements/vacuum.y" { (yyval.ival) = PG_VACOPT_ANALYZE; ;} break; - case 1480: + case 1481: #line 71 "third_party/libpg_query/grammar/statements/vacuum.y" { (yyval.ival) = PG_VACOPT_VERBOSE; ;} break; - case 1481: + case 1482: #line 72 "third_party/libpg_query/grammar/statements/vacuum.y" { (yyval.ival) = PG_VACOPT_FREEZE; ;} break; - case 1482: + case 1483: #line 73 "third_party/libpg_query/grammar/statements/vacuum.y" { (yyval.ival) = PG_VACOPT_FULL; ;} break; - case 1483: + case 1484: #line 75 "third_party/libpg_query/grammar/statements/vacuum.y" { if (strcmp((yyvsp[(1) - (1)].str), "disable_page_skipping") == 0) @@ -30954,37 +30965,37 @@ YYLTYPE yylloc; ;} break; - case 1484: + case 1485: #line 87 "third_party/libpg_query/grammar/statements/vacuum.y" { (yyval.boolean) = true; ;} break; - case 1485: + case 1486: #line 88 "third_party/libpg_query/grammar/statements/vacuum.y" { (yyval.boolean) = false; ;} break; - case 1486: + case 1487: #line 93 "third_party/libpg_query/grammar/statements/vacuum.y" { (yyval.ival) = (yyvsp[(1) - (1)].ival); ;} break; - case 1487: + case 1488: #line 94 "third_party/libpg_query/grammar/statements/vacuum.y" { (yyval.ival) = (yyvsp[(1) - (3)].ival) | (yyvsp[(3) - (3)].ival); ;} break; - case 1488: + case 1489: #line 98 "third_party/libpg_query/grammar/statements/vacuum.y" { (yyval.boolean) = true; ;} break; - case 1489: + case 1490: #line 99 "third_party/libpg_query/grammar/statements/vacuum.y" { (yyval.boolean) = false; ;} break; - case 1490: + case 1491: #line 9 "third_party/libpg_query/grammar/statements/delete.y" { PGDeleteStmt *n = makeNode(PGDeleteStmt); @@ -30997,7 +31008,7 @@ YYLTYPE yylloc; ;} break; - case 1491: + case 1492: #line 19 "third_party/libpg_query/grammar/statements/delete.y" { PGDeleteStmt *n = makeNode(PGDeleteStmt); @@ -31010,14 +31021,14 @@ YYLTYPE yylloc; ;} break; - case 1492: + case 1493: #line 32 "third_party/libpg_query/grammar/statements/delete.y" { (yyval.range) = (yyvsp[(1) - (1)].range); ;} break; - case 1493: + case 1494: #line 36 "third_party/libpg_query/grammar/statements/delete.y" { PGAlias *alias = makeNode(PGAlias); @@ -31027,7 +31038,7 @@ YYLTYPE yylloc; ;} break; - case 1494: + case 1495: #line 43 "third_party/libpg_query/grammar/statements/delete.y" { PGAlias *alias = makeNode(PGAlias); @@ -31037,27 +31048,27 @@ YYLTYPE yylloc; ;} break; - case 1495: + case 1496: #line 53 "third_party/libpg_query/grammar/statements/delete.y" { (yyval.node) = (yyvsp[(2) - (2)].node); ;} break; - case 1496: + case 1497: #line 54 "third_party/libpg_query/grammar/statements/delete.y" { (yyval.node) = NULL; ;} break; - case 1497: + case 1498: #line 60 "third_party/libpg_query/grammar/statements/delete.y" { (yyval.list) = (yyvsp[(2) - (2)].list); ;} break; - case 1498: + case 1499: #line 61 "third_party/libpg_query/grammar/statements/delete.y" { (yyval.list) = NIL; ;} break; - case 1499: + case 1500: #line 10 "third_party/libpg_query/grammar/statements/analyze.y" { PGVacuumStmt *n = makeNode(PGVacuumStmt); @@ -31070,7 +31081,7 @@ YYLTYPE yylloc; ;} break; - case 1500: + case 1501: #line 20 "third_party/libpg_query/grammar/statements/analyze.y" { PGVacuumStmt *n = makeNode(PGVacuumStmt); @@ -31083,7 +31094,7 @@ YYLTYPE yylloc; ;} break; - case 1501: + case 1502: #line 8 "third_party/libpg_query/grammar/statements/attach.y" { PGAttachStmt *n = makeNode(PGAttachStmt); @@ -31095,7 +31106,7 @@ YYLTYPE yylloc; ;} break; - case 1502: + case 1503: #line 17 "third_party/libpg_query/grammar/statements/attach.y" { PGAttachStmt *n = makeNode(PGAttachStmt); @@ -31107,7 +31118,7 @@ YYLTYPE yylloc; ;} break; - case 1503: + case 1504: #line 29 "third_party/libpg_query/grammar/statements/attach.y" { PGDetachStmt *n = makeNode(PGDetachStmt); @@ -31117,7 +31128,7 @@ YYLTYPE yylloc; ;} break; - case 1504: + case 1505: #line 36 "third_party/libpg_query/grammar/statements/attach.y" { PGDetachStmt *n = makeNode(PGDetachStmt); @@ -31127,7 +31138,7 @@ YYLTYPE yylloc; ;} break; - case 1505: + case 1506: #line 43 "third_party/libpg_query/grammar/statements/attach.y" { PGDetachStmt *n = makeNode(PGDetachStmt); @@ -31137,27 +31148,27 @@ YYLTYPE yylloc; ;} break; - case 1506: + case 1507: #line 51 "third_party/libpg_query/grammar/statements/attach.y" {;} break; - case 1507: + case 1508: #line 52 "third_party/libpg_query/grammar/statements/attach.y" {;} break; - case 1508: + case 1509: #line 56 "third_party/libpg_query/grammar/statements/attach.y" { (yyval.str) = (yyvsp[(2) - (2)].str); ;} break; - case 1509: + case 1510: #line 57 "third_party/libpg_query/grammar/statements/attach.y" { (yyval.str) = NULL; ;} break; - case 1510: + case 1511: #line 3 "third_party/libpg_query/grammar/statements/variable_reset.y" { (yyvsp[(2) - (2)].vsetstmt)->scope = VAR_SET_SCOPE_DEFAULT; @@ -31165,7 +31176,7 @@ YYLTYPE yylloc; ;} break; - case 1511: + case 1512: #line 8 "third_party/libpg_query/grammar/statements/variable_reset.y" { (yyvsp[(3) - (3)].vsetstmt)->scope = VAR_SET_SCOPE_LOCAL; @@ -31173,7 +31184,7 @@ YYLTYPE yylloc; ;} break; - case 1512: + case 1513: #line 13 "third_party/libpg_query/grammar/statements/variable_reset.y" { (yyvsp[(3) - (3)].vsetstmt)->scope = VAR_SET_SCOPE_SESSION; @@ -31181,7 +31192,7 @@ YYLTYPE yylloc; ;} break; - case 1513: + case 1514: #line 18 "third_party/libpg_query/grammar/statements/variable_reset.y" { (yyvsp[(3) - (3)].vsetstmt)->scope = VAR_SET_SCOPE_GLOBAL; @@ -31189,7 +31200,7 @@ YYLTYPE yylloc; ;} break; - case 1514: + case 1515: #line 23 "third_party/libpg_query/grammar/statements/variable_reset.y" { (yyvsp[(3) - (3)].vsetstmt)->scope = VAR_SET_SCOPE_VARIABLE; @@ -31197,7 +31208,7 @@ YYLTYPE yylloc; ;} break; - case 1515: + case 1516: #line 32 "third_party/libpg_query/grammar/statements/variable_reset.y" { PGVariableSetStmt *n = makeNode(PGVariableSetStmt); @@ -31207,7 +31218,7 @@ YYLTYPE yylloc; ;} break; - case 1516: + case 1517: #line 39 "third_party/libpg_query/grammar/statements/variable_reset.y" { PGVariableSetStmt *n = makeNode(PGVariableSetStmt); @@ -31216,12 +31227,12 @@ YYLTYPE yylloc; ;} break; - case 1517: + case 1518: #line 48 "third_party/libpg_query/grammar/statements/variable_reset.y" { (yyval.vsetstmt) = (yyvsp[(1) - (1)].vsetstmt); ;} break; - case 1518: + case 1519: #line 50 "third_party/libpg_query/grammar/statements/variable_reset.y" { PGVariableSetStmt *n = makeNode(PGVariableSetStmt); @@ -31231,7 +31242,7 @@ YYLTYPE yylloc; ;} break; - case 1519: + case 1520: #line 57 "third_party/libpg_query/grammar/statements/variable_reset.y" { PGVariableSetStmt *n = makeNode(PGVariableSetStmt); @@ -31241,7 +31252,7 @@ YYLTYPE yylloc; ;} break; - case 1520: + case 1521: #line 3 "third_party/libpg_query/grammar/statements/variable_show.y" { PGVariableShowSelectStmt *n = makeNode(PGVariableShowSelectStmt); @@ -31252,7 +31263,7 @@ YYLTYPE yylloc; ;} break; - case 1521: + case 1522: #line 10 "third_party/libpg_query/grammar/statements/variable_show.y" { PGVariableShowSelectStmt *n = makeNode(PGVariableShowSelectStmt); @@ -31263,7 +31274,7 @@ YYLTYPE yylloc; ;} break; - case 1522: + case 1523: #line 18 "third_party/libpg_query/grammar/statements/variable_show.y" { PGVariableShowStmt *n = makeNode(PGVariableShowStmt); @@ -31273,7 +31284,7 @@ YYLTYPE yylloc; ;} break; - case 1523: + case 1524: #line 25 "third_party/libpg_query/grammar/statements/variable_show.y" { PGVariableShowStmt *n = makeNode(PGVariableShowStmt); @@ -31283,7 +31294,7 @@ YYLTYPE yylloc; ;} break; - case 1524: + case 1525: #line 32 "third_party/libpg_query/grammar/statements/variable_show.y" { PGVariableShowStmt *n = makeNode(PGVariableShowStmt); @@ -31293,7 +31304,7 @@ YYLTYPE yylloc; ;} break; - case 1525: + case 1526: #line 39 "third_party/libpg_query/grammar/statements/variable_show.y" { PGVariableShowStmt *n = makeNode(PGVariableShowStmt); @@ -31303,7 +31314,7 @@ YYLTYPE yylloc; ;} break; - case 1526: + case 1527: #line 46 "third_party/libpg_query/grammar/statements/variable_show.y" { PGVariableShowStmt *n = makeNode(PGVariableShowStmt); @@ -31313,7 +31324,7 @@ YYLTYPE yylloc; ;} break; - case 1527: + case 1528: #line 53 "third_party/libpg_query/grammar/statements/variable_show.y" { PGVariableShowStmt *n = makeNode(PGVariableShowStmt); @@ -31323,17 +31334,17 @@ YYLTYPE yylloc; ;} break; - case 1534: + case 1535: #line 67 "third_party/libpg_query/grammar/statements/variable_show.y" { (yyval.str) = (yyvsp[(1) - (1)].str); ;} break; - case 1535: + case 1536: #line 69 "third_party/libpg_query/grammar/statements/variable_show.y" { (yyval.str) = psprintf("%s.%s", (yyvsp[(1) - (3)].str), (yyvsp[(3) - (3)].str)); ;} break; - case 1536: + case 1537: #line 7 "third_party/libpg_query/grammar/statements/call.y" { PGCallStmt *n = makeNode(PGCallStmt); @@ -31342,7 +31353,7 @@ YYLTYPE yylloc; ;} break; - case 1537: + case 1538: #line 10 "third_party/libpg_query/grammar/statements/view.y" { PGViewStmt *n = makeNode(PGViewStmt); @@ -31357,7 +31368,7 @@ YYLTYPE yylloc; ;} break; - case 1538: + case 1539: #line 23 "third_party/libpg_query/grammar/statements/view.y" { PGViewStmt *n = makeNode(PGViewStmt); @@ -31372,7 +31383,7 @@ YYLTYPE yylloc; ;} break; - case 1539: + case 1540: #line 36 "third_party/libpg_query/grammar/statements/view.y" { PGViewStmt *n = makeNode(PGViewStmt); @@ -31387,7 +31398,7 @@ YYLTYPE yylloc; ;} break; - case 1540: + case 1541: #line 49 "third_party/libpg_query/grammar/statements/view.y" { PGViewStmt *n = makeNode(PGViewStmt); @@ -31407,7 +31418,7 @@ YYLTYPE yylloc; ;} break; - case 1541: + case 1542: #line 67 "third_party/libpg_query/grammar/statements/view.y" { PGViewStmt *n = makeNode(PGViewStmt); @@ -31427,27 +31438,27 @@ YYLTYPE yylloc; ;} break; - case 1542: + case 1543: #line 87 "third_party/libpg_query/grammar/statements/view.y" { (yyval.viewcheckoption) = CASCADED_CHECK_OPTION; ;} break; - case 1543: + case 1544: #line 88 "third_party/libpg_query/grammar/statements/view.y" { (yyval.viewcheckoption) = CASCADED_CHECK_OPTION; ;} break; - case 1544: + case 1545: #line 89 "third_party/libpg_query/grammar/statements/view.y" { (yyval.viewcheckoption) = PG_LOCAL_CHECK_OPTION; ;} break; - case 1545: + case 1546: #line 90 "third_party/libpg_query/grammar/statements/view.y" { (yyval.viewcheckoption) = PG_NO_CHECK_OPTION; ;} break; - case 1546: + case 1547: #line 12 "third_party/libpg_query/grammar/statements/create_as.y" { PGCreateTableAsStmt *ctas = makeNode(PGCreateTableAsStmt); @@ -31463,7 +31474,7 @@ YYLTYPE yylloc; ;} break; - case 1547: + case 1548: #line 25 "third_party/libpg_query/grammar/statements/create_as.y" { PGCreateTableAsStmt *ctas = makeNode(PGCreateTableAsStmt); @@ -31479,7 +31490,7 @@ YYLTYPE yylloc; ;} break; - case 1548: + case 1549: #line 38 "third_party/libpg_query/grammar/statements/create_as.y" { PGCreateTableAsStmt *ctas = makeNode(PGCreateTableAsStmt); @@ -31495,22 +31506,22 @@ YYLTYPE yylloc; ;} break; - case 1549: + case 1550: #line 54 "third_party/libpg_query/grammar/statements/create_as.y" { (yyval.boolean) = true; ;} break; - case 1550: + case 1551: #line 55 "third_party/libpg_query/grammar/statements/create_as.y" { (yyval.boolean) = false; ;} break; - case 1551: + case 1552: #line 56 "third_party/libpg_query/grammar/statements/create_as.y" { (yyval.boolean) = true; ;} break; - case 1552: + case 1553: #line 62 "third_party/libpg_query/grammar/statements/create_as.y" { (yyval.into) = makeNode(PGIntoClause); @@ -31525,7 +31536,7 @@ YYLTYPE yylloc; /* Line 1267 of yacc.c. */ -#line 31529 "third_party/libpg_query/grammar/grammar_out.cpp" +#line 31540 "third_party/libpg_query/grammar/grammar_out.cpp" default: break; } YY_SYMBOL_PRINT ("-> $$ =", yyr1[yyn], &yyval, &yyloc); diff --git a/src/duckdb/ub_src_function_window.cpp b/src/duckdb/ub_src_function_window.cpp index 2c8af3c1..16e5fa65 100644 --- a/src/duckdb/ub_src_function_window.cpp +++ b/src/duckdb/ub_src_function_window.cpp @@ -20,6 +20,8 @@ #include "src/function/window/window_index_tree.cpp" +#include "src/function/window/window_merge_sort_tree.cpp" + #include "src/function/window/window_naive_aggregator.cpp" #include "src/function/window/window_rank_function.cpp" @@ -30,5 +32,7 @@ #include "src/function/window/window_shared_expressions.cpp" +#include "src/function/window/window_token_tree.cpp" + #include "src/function/window/window_value_function.cpp"